linux ngrep komutu (ağ trafiği işlemleri)

ngrep komutu, bildiğimiz grep komutunun network versiyonudur. Başlıkta da belirttiğim gibi ağ trafiğini inceleme işlemlerinde kullanılır.

Kullanımı sırasında regex işlemlerine izin vermektedir. Yani data paketleri içerisinde arama da yapabiliyoruz. HTTP, SMTP, FTP gibi her türlü ağ trafiğini izlemek ve analiz etmek için kullanılmaktadır. Ayrıca kaynak ve port seçmemize de olanak sağlıyor.

Kurulumu şu şekildedir;

apt-get install ngrep

Kullanımı için bir kaç örnek vermek gerekirse;

ngrep -d any port 80

80. port ile ilgili tüm trafiği ekrana basacaktır. -d parametresi host üzerinde bulunan tüm network interfaceleri üzerindeki trafiği görmek için eklenmiştir, özelleştirmek için -d eth0 diyerek özel bir interface üzerindeki trafiği görebiliriz.

Çıktıları gözümüze biraz karmaşık gelebilir. O yüzden, çıktıları satır satır görmek için, -W Byline parametresini de ekleyebiliriz.

ngrep -d any -W Byline port 80

Detayları için bu sayfayı ziyaret edebilirsiniz : http://ngrep.sourceforge.net/usage.html

Linux terminalde temel network komutları

Dosya indirirken, kullandığımız network üzerindeki işlemleri incelerken, istatistiklerine bakarken, network problemlerine göz atarken kullandığımız arayüzü gelişmiş programlar veya internet siteleri var. Tabi bunların her biri için kullanabildiğimiz birer linux komutları da var, genel olarak onlardan bahsetmek istedim.

curl & wget

curl veya wget, internet üzerinden dosya indirmemize yarar. curl kullanıyorsanız -O parametresi ile, wget kullanıyorsanız parametresiz bir şekilde bulunduğunuz dizine dosyayı indirebilirsiniz.

curl -O website.com/file
wget website.com/file

ping

ping komutu ECHO_REQUEST paketleri göndererek, bilgisayarınızın yazdığınız ip adresi veya domain ile iletişime geçip geçemediğini size bildirir. Ancak bunu kullanırken bazı sistemlerin ping komutuna yanıt verebilecek şekilde yapılandırılmadığını da göz önünde bulundurmalısınız.

Windowstaki ping komutu belirli sayıda paket göndererek size yanıtları gösterir, ancak Linux üzerinde siz sonlandırana kadar paket göndermeye ve size sonuç göstermeye devam eder. Bu yüzden Linuxta ping komutuna parametre olarak -c ve paket adedini yazarak kaç paket ile ping atılacağını yönetebilirsiniz.

ping -c 5 dubluve.net

tracepath & traceroute

tracepath komutu ile traceroute komutu birbirine benzer işlemler yapmaktadırlar. (tracepath Ubuntu’da kurulu olarak gelmektedir.) Eğer internet ağınızda bir yavaşlama veya bir problem varsa, bu komut size nerede hata olduğunu göstermektedir.

tracepath dubluve.net

mtr

Mtr komutu, gitmek istediğimiz ip adresine / domaine ulaşıncaya kadar geçtiğimiz ağları tanılamaya yarayan komuttur. Detayları için buradaki yazıyı inceleyebilirsiniz. Windowstaki kullanımı için de (tracert) buradaki yazıyı inceleyebilirsiniz.

mtr dubluve.net

(Çıkış yapmak için q veya ctrl-c kullanabilirsiniz.)

host

Domain kullanarak ip adresi öğrenebilen komuttur.

host dubluve.net

whois

whois komutunu kullanarak websitesinin kimin adına kayıtlı olduğunu, name serverlarını vs. birçok bilgiyi öğrenebiliriz.

whois dubluve.net

Ubuntu’da whois kurulu olarak gelmemektedir, sudo apt-get install whois diyerek install edebilirsiniz.

ifplugstatus

ifplugstatus Ubuntu’da kurulu olarak gelmemektedir, sudo apt-get install ifplugd komutu ile install ediniz.

ifplugstatus komutu size network interface üzerindeki statusları gösterir.

ifplugstatus

Çıktısı şu şekilde olur;

eth0: unplugged
lo: link beat detected
wlan0: link beat detected

link beat detected demek, bağlı olduğunu gösterir, unplugged ise olmadığını gösterir.

ifconfig

ifconfig ağ üzerindeki bir çok bilginizi görmeye yarar. IP adresiniz, bağlantı türünüz, kullandığınız network arayüzü, aktif arayüzler vs.

ifconfig

dhclient

dhclient komutu bilgisayarınızın ip adresinden yeni bir DHCP server yaratır. DCHP serverın ne olduğu hakkında bilgi edinmek için buradaki yazıyı okuyunuz.

dhclient Ubuntu’da root olmanızı istemektedir, eğer ip adersinizin aynı kalmasını istiyorsanız -r parametresi ile kullanınız.

sudo dhclient -r
sudo dhclient

netstat

netstat komutu network arayüzünüzle ilgili bir çok bilgiyi sunmaktadır.

netstat

-p parametresi ile programların ilişkili olduğu socketleri görüntülersiniz.

netstat -p

-s parametresi ile portların detaylı istatistiklerini görüntülersiniz.

netstat -s

ubuntu’da statik ip adresi ayarları

Ubuntu’da komut satırından statik ip ve dns adreslerini ayarlama işlemleri şu şekilde olmaktadır;

İlk olarak network interface ayarlarımızı düzenliyoruz. Herhangi bir text editörü kullanarak bu işlemi yapabiliriz, örneğin nano ile yapmak için;

sudo nano /etc/network/interfaces

Açtığınız dosyanın içerisinde şunları göreceksiniz;

auto lo eth0
iface lo inet loopback
iface eth0 inet dynamic

Eğer birden fazla network kartınız varsa, hangi network interface üzerinde ayar yaptığınıza dikkat etmelisiniz.
Dosyanın içerisini şu şekilde düzenliyoruz, ardından kaydediyoruz;

auto lo eth0
iface lo inet loopback
iface eth0 inet static
        address xxx.xxx.xxx.xxx(buraya ip adresini yazıyoruz)
        netmask xxx.xxx.xxx.xxx
        gateway xxx.xxx.xxx.xxx(buraya router ip adresini yazıyoruz)

Ardından DNS ayarlarımızı değiştiriyoruz. Bunun için /etc/resolv.conf dosyasını düzenliyoruz.

sudo nano /etc/resolv.conf

Dosyayı açtıktan sonra içerisini şu şekilde düzenleyip kaydediyoruz;

nameserver xxx.xxx.xxx.xxx(dns server ip'si)
nameserver xxx.xxx.xxx.xxx(alt dns server ip'si)

Son olarak network interface için restart yapıyoruz;

sudo /etc/init.d/networking restart

Eğer isterseniz ifconfig yazarak yaptığınız ayarları kontrol edebilirsiniz.

Kaynak : http://www.howtoforge.com/linux-basics-set-a-static-ip-on-ubuntu

network – LLDP (Link Layer Discovery Protocol) nedir?

Networklerde cihazların ilişkilerini bulabilmek için cihazların barındırdığı network discovery protokolleri kullanırız.

LLDP (Link Layer Discovery Protocol), ethernet networklerinde bridge‘lerin, wireless access point’lerin vs. yayın yaptıkları ve yayınlarını aldıkları ilişkili cihazlar hakkında bilgi sahibi oldukları bir metoddur. Cihazlar arasındaki bilgiyi gösterir. Yani bir veri-bağlantı katmanı protokolüdür. LLDP, MAC (Media Access Control) katmanının üzerinde çalışır. Bu yüzden bir MAC servisini çalıştıran herhangi bir ağ cihazı üzerinde kullanılabilir.

LLDP mesajları kesin bilgileri garantilemek için pediyodik aralıklarla gönderilir. Bu zaman aralığı kullanıcının belirlerdiği TTL (Time To Live) değeridir. TTL default olarak 120 saniye olarak tanımlanmıştır. Cihazların kullanım durumlarına göre kullanıcı tarafından değiştirilebilir.

network – Bridge nedir?

Aynı protokolü kullanan alt ağları birbirine bağlamaya yararlar.

Nasıl çalışırlar? Şöyle; birbirine LAN ile bağlı 4 bilgisayar düşünelim, bunlardan bağımsız ama yine birbiriyle LAN ile bağlı 4 bilgisayar daha düşünelim. Bu iki LAN’ı birbirleriyle (bridge kullanarak) bağladığımız zaman mantıken ortaya bir LAN çıkar.

Bridge burda ne işe yarar, ne yapar kısmına gelelim. Bu bahsi geçen 2 LAN’ın kendi içlerinde oluşturduğu bir veri akış trafiği vardır. Bir LAN’dan diğerine veri aktarmak istediğimizde doğal olarak trafik artışı olacaktır. Bu iki bağımsız ağ arasına konulan köprü, iki tarafa da aktarılmak istenen verileri inceler. Eğer verinin gitmesi gereken adres diğer ağda değilse, onu diğer ağ tarafına geçirmez ve böylece diğer tarafın trafiği boş yere artmaz. Yani bridge verilerin gideceği adresleri tutar diyebiliriz.

Bunlara ek olarak bridge süzme işlemi yaptığı için, yani bir LAN’dan diğerine verileri kontrol ederek geçirdiği için, LAN’lardan herhangi birinde oluşan hatalar ya da arızalar diğer LAN’ı etkilemez.