Linux üzerinde ağ yönetimi ve sorun giderme için kullanılan birçok güçlü araç mevcuttur. Aşağıda, Linux ortamlarında ağ yönetimi ve sorun giderme için en yaygın kullanılan network araçlarını ve kullanım alanlarını listeledim. Bu araçlar, ağ bağlantılarını analiz etmek, performansı değerlendirmek ve güvenlik açıklarını tespit etmek için kullanılır.
1. ping
- Açıklama: Ağ bağlantısını test etmek ve başka bir ana bilgisayara ulaşılabilir olup olmadığını kontrol etmek için kullanılır.
- Örnek:
bash ping google.com
2. ifconfig / ip
- Açıklama: Ağ arayüzlerini yapılandırmak, IP adreslerini, subnet maskelerini ve diğer ağ parametrelerini görüntülemek ve ayarlamak için kullanılır.
- Örnek:
ifconfig
(eski):bash ifconfig
ip
(yeni, tercih edilen):bash ip addr show
3. netstat / ss
- Açıklama: Ağ bağlantıları, routing tabloları, arayüz istatistikleri ve daha fazlası hakkında bilgi sağlar.
- Örnek:
netstat
(eski):bash netstat -tuln
ss
(yeni, tercih edilen):bash ss -tuln
netstat
komutu, ağ bağlantıları, routing tabloları, arayüz istatistikleri ve bağlantı noktaları hakkında bilgi sağlamak için kullanılan güçlü bir araçtır. Linux ve diğer Unix tabanlı işletim sistemlerinde yaygın olarak kullanılır. Aşağıdanetstat
komutunun geniş kullanım alanlarını, farklı parametrelerle birlikte örnekler vererek açıkladım.- 1. Temel Kullanım
- Açıklama: Aktif ağ bağlantılarını gösterir.
- Örnek:
bash netstat
Bu komut çalıştırıldığında, sistemdeki tüm aktif bağlantıları, arayüz bilgilerini ve port bilgilerini görürsünüz. - 2. Aktif Dinleme Bağlantılarını Görüntüleme
- Açıklama: Sistem üzerinde aktif olarak dinlemekte olan portları listeler.
- Örnek:
bash netstat -tuln
-t
: TCP bağlantılarını gösterir.-u
: UDP bağlantılarını gösterir.-l
: Dinleyen (listening) portları gösterir.-n
: IP adreslerini ve portları çözümlemeden numaralar halinde gösterir (daha hızlıdır).
- 3. Belirli Bir Protokole Göre Filtreleme
- Açıklama: Sadece belirli bir protokol (TCP, UDP) için aktif bağlantıları gösterir.
- Örnek:
- TCP bağlantıları:
bash netstat -at
- UDP bağlantıları:
bash netstat -au
- TCP bağlantıları:
- 4. Routing Tablosunu Görüntüleme
- Açıklama: Sisteminizdeki routing (yönlendirme) tablosunu gösterir.
- Örnek:
bash netstat -r
Bu komut, ağ trafiğinin nasıl yönlendirildiğini gösteren routing tablosunu listeler. - 5. Arayüz İstatistiklerini Görüntüleme
- Açıklama: Ağ arayüzlerindeki paket istatistiklerini görüntüler.
- Örnek:
bash netstat -i
Bu komut, her bir ağ arayüzü için alınan ve gönderilen paketlerin sayısını gösterir. - 6. Ağ İstatistiklerini Görüntüleme
- Açıklama: Ağ istatistiklerini (protokollere göre) gösterir.
- Örnek:
bash netstat -s
Bu komut, TCP, UDP, ICMP ve diğer protokoller için detaylı istatistikler sunar. - 7. Program ve Soket Bağlantıları
- Açıklama: Hangi programın hangi bağlantı noktasını kullandığını gösterir.
- Örnek:
bash netstat -p
Bu komut, her bağlantı ile ilişkili program PID’sini ve ismini listeler. - 8. Belirli Bir IP Adresi veya Port için Bağlantıları Görüntüleme
- Açıklama: Belirli bir IP adresi veya port numarası için bağlantıları filtreleyerek gösterir.
- Örnek:
bash netstat -an | grep 80
Bu komut, port 80 üzerinden çalışan tüm bağlantıları gösterir. - 9. Masquerade Bağlantıları Görüntüleme
- Açıklama: NAT (Network Address Translation) tarafından yönlendirilmiş bağlantıları gösterir.
- Örnek:
bash netstat -M
Bu komut, iptables veya NAT ile maskelenmiş (masqueraded) bağlantıları listeler. - 10. Sürekli Olarak Bağlantı Bilgisi Alma
- Açıklama: Sürekli olarak aktif bağlantıları takip etmek için bir süre ile yenilenen bir
netstat
komutu çalıştırabilirsiniz. - Örnek:
bash watch -n 2 netstat -tuln
Bu komut, her 2 saniyede bir aktif dinleyen bağlantıları yeniler ve güncel listeyi gösterir. - 11. Tüm Seçeneklerle Detaylı Çıktı
- Açıklama:
netstat
komutunun tüm seçeneklerini birleştirerek çok daha detaylı bir çıktı alabilirsiniz. - Örnek:
bash netstat -atunp
Bu komut, sistemdeki tüm TCP ve UDP bağlantılarını, IP adreslerini, port numaralarını ve hangi programın bu bağlantıyı kullandığını listeler. - 12. Bağlantı Durumlarını Görüntüleme
- Açıklama: Tüm bağlantıların durumunu gösterir (ESTABLISHED, LISTEN, CLOSE_WAIT gibi).
- Örnek:
bash netstat -an | grep ESTABLISHED
Bu komut, sadece aktif olan (ESTABLISHED durumunda) bağlantıları gösterir. - 13. Kernel Bağlantı Noktası Kullanımını Görüntüleme
- Açıklama: Kernel tarafından kullanılan bağlantı noktalarını görüntüler.
- Örnek:
bash netstat -k
netstat
komutu, ağ bağlantılarını analiz etmek ve sorun gidermek için oldukça güçlü bir araçtır. Ancak, bazı Linux dağıtımlarındanetstat
komutunun yeriness
komutu önerilmektedir, çünküss
daha modern bir altyapı kullanır ve daha hızlıdır.netstat
ile ağ üzerinde neler olup bittiğini anlama konusunda geniş bir yelpazede bilgi edinebilirsiniz.
4. traceroute
- Açıklama: Bir paketin hedefe giderken geçtiği yönlendiricileri (router) izler ve her aşamadaki gecikmeleri gösterir.
- Örnek:
bash traceroute google.com
5. nslookup / dig
- Açıklama: DNS sorguları yapmak ve bir alan adının IP adresini veya tersine IP adresinin alan adını öğrenmek için kullanılır.
- Örnek:
nslookup
(eski):bash nslookup google.com
dig
(yeni, tercih edilen):bash dig google.com
nslookup
, bir DNS (Domain Name System) sorgulama aracıdır ve bir alan adının IP adresini veya bir IP adresinin alan adını öğrenmek için kullanılır. DNS kayıtlarını sorgulamak için kullanılabilecek en temel ve yaygın araçlardan biridir.nslookup
, hem interaktif hem de komut satırı modunda çalıştırılabilir. İştenslookup
komutunun genel kullanım alanları ve örnekler:- 1. Temel Alan Adı Sorgulama
- Açıklama: Bir alan adının IP adresini öğrenmek için kullanılır.
- Örnek:
bash nslookup google.com
Bu komut,google.com
alan adının IP adresini döndürür. - 2. Ters DNS Sorgulama (Reverse Lookup)
- Açıklama: Bir IP adresine karşılık gelen alan adını öğrenmek için kullanılır.
- Örnek:
bash nslookup 8.8.8.8
Bu komut,8.8.8.8
IP adresine karşılık gelen alan adını gösterir (Google Public DNS). - 3. Özel DNS Sunucusu ile Sorgulama
- Açıklama: Belirli bir DNS sunucusunu kullanarak DNS sorgusu yapmak için kullanılır. Eğer kendi DNS sunucunuzu veya alternatif bir DNS sunucusunu kullanarak sorgulama yapmak isterseniz bu yöntem kullanılabilir.
- Örnek:
bash nslookup google.com 8.8.8.8
Bu komut,google.com
alan adını sorgulamak için Google’ın DNS sunucusu olan8.8.8.8
sunucusunu kullanır. - 4. Interaktif Mod
- Açıklama:
nslookup
komutu interaktif modda çalıştırılarak, birden fazla sorgulama yapılabilir. Interaktif moddanslookup
başlatıldığında, kullanıcıya bir>
işaretiyle komut beklenir. - Örnek:
bash nslookup
Ardından, komut satırında şunları girebilirsiniz:> set type=MX > google.com
Bu işlem,google.com
için MX (Mail Exchange) kayıtlarını döndürecektir. - 5. Belirli DNS Kayıt Türlerini Sorgulama
- Açıklama: Belirli bir DNS kayıt türünü (A, MX, CNAME, TXT vb.) sorgulamak için kullanılır.
- Örnek:
- A Kaydı Sorgulama (Varsayılan):
bash nslookup google.com
- MX Kaydı Sorgulama (Mail Exchange):
bash nslookup -query=mx google.com
- TXT Kaydı Sorgulama (Text Records):
bash nslookup -query=txt google.com
- NS Kaydı Sorgulama (Name Server):
bash nslookup -query=ns google.com
- A Kaydı Sorgulama (Varsayılan):
- 6. TTL (Time to Live) Bilgisi ile Sorgulama
- Açıklama: DNS kayıtlarının geçerlilik süresi (TTL) bilgisi ile sorgulama yapılabilir.
- Örnek:
bash nslookup -debug google.com
Bu komut,google.com
için yapılan sorgunun TTL ve diğer detaylı bilgilerini gösterir. - 7. Interaktif Modda DNS Sunucusu Değiştirme
- Açıklama: Interaktif moddayken DNS sunucusunu değiştirebilirsiniz.
- Örnek:
bash nslookup
Ardından komut satırında şunları girin:> server 8.8.8.8 > google.com
Bu komut,google.com
alan adını sorgulamak için Google Public DNS sunucusu8.8.8.8
üzerinden sorgu yapacaktır. - 8. Timeout ve Retry Değerlerini Değiştirme
- Açıklama: Zaman aşımı süresini ve yeniden deneme sayısını ayarlayabilirsiniz.
- Örnek:
bash nslookup
Ardından komut satırında şunları girin:> timeout=10 > retry=3 > google.com
Bu ayarlar, her sorgu için zaman aşımını 10 saniyeye ve yeniden deneme sayısını 3’e ayarlayacaktır. - 9. IPv6 Sorgulama
- Açıklama: Bir alan adının IPv6 adresini sorgulamak için kullanılır.
- Örnek:
bash nslookup -query=aaaa google.com
Bu komut,google.com
için IPv6 (AAAA) kayıtlarını döndürecektir. - 10. NS Kaydı Sorgulama
- Açıklama: Bir alan adının NS (Name Server) kayıtlarını sorgulamak için kullanılır.
- Örnek:
bash nslookup -query=ns example.com
- 11. Ters DNS ve PTR Kayıtları
- Açıklama: Ters DNS sorgulaması yaparak bir IP adresinin PTR kaydını alabilirsiniz.
- Örnek:
bash nslookup -query=ptr 8.8.8.8
nslookup
, ağ yöneticileri ve geliştiriciler için oldukça yararlı bir araçtır ve çeşitli DNS sorunlarını çözmek için hızlı ve etkili bir şekilde kullanılabilir. Bu komut, DNS ad çözümleme problemlerini analiz ederken sıkça başvurulan bir araçtır.
6. whois
- Açıklama: Bir alan adı veya IP adresi hakkında bilgi almak için kullanılır.
- Örnek:
bash whois google.com
7. nmap
- Açıklama: Ağ tarama ve güvenlik denetimi aracı. Bir ağdaki açık portları, işletim sistemi bilgilerini ve daha fazlasını keşfetmek için kullanılır.
- Örnek:
bash nmap 192.168.1.1
nmap
(Network Mapper), ağ keşfi ve güvenlik denetimi için kullanılan güçlü ve esnek bir araçtır. Hem küçük hem de büyük ölçekli ağlarda yaygın olarak kullanılır.nmap
, ağdaki açık portları, hizmetleri, işletim sistemi bilgisini ve diğer birçok detayı tespit edebilir. Bu araç, ağ yöneticileri ve güvenlik uzmanları tarafından sıklıkla kullanılır.nmap
Temel Kullanım Alanları ve Seçenekleri- Aşağıda,
nmap
komutunun genel kullanım alanlarını ve çeşitli parametreleri anlatan detaylı bir kılavuz bulabilirsiniz: - 1. Temel Port Tarama
- Açıklama: Bir hedefin açık portlarını tarar.
- Örnek:
bash nmap 192.168.1.1
Bu komut, hedef cihazın (192.168.1.1) açık olan portlarını varsayılan olarak tarar (1-1000 arası TCP portları). - 2. Belirli Portları Tarama
- Açıklama: Belirli portları veya port aralıklarını taramak için kullanılır.
- Örnek:
nmap -p 22,80,443 192.168.1.1
Bu komut, hedefin sadece22
,80
ve443
portlarını tarar. - Port Aralığı Tarama:
bash nmap -p 1-65535 192.168.1.1
Bu komut, hedefteki tüm TCP portlarını (1-65535 arası) tarar. - 3. UDP Port Tarama
- Açıklama: UDP portlarını taramak için kullanılır. TCP taramalarına göre daha yavaş olabilir çünkü UDP bağlantısız bir protokoldür.
- Örnek:
bash sudo nmap -sU 192.168.1.1
Bu komut, hedef cihazın UDP portlarını tarar. - 4. Tüm Portları Tarama
- Açıklama: Hedef cihazdaki tüm TCP ve UDP portlarını tarar.
- Örnek:
bash sudo nmap -p- -sU -sT 192.168.1.1
Bu komut, hem TCP hem de UDP portlarını tarar. - 5. Servis ve Sürüm Bilgisi Tespiti
- Açıklama: Hedefte çalışan hizmetlerin ve bu hizmetlerin sürüm bilgilerini tespit eder.
- Örnek:
bash nmap -sV 192.168.1.1
Bu komut, hedefteki açık portlarda çalışan hizmetlerin adlarını ve sürüm bilgilerini keşfeder. - 6. İşletim Sistemi Tespiti
- Açıklama: Hedef cihazın işletim sistemini tespit eder. Bu işlem, IP paketlerindeki davranışlara dayanır.
- Örnek:
bash sudo nmap -O 192.168.1.1
Bu komut, hedef cihazın işletim sistemini ve sürümünü tespit etmeye çalışır. - 7. Ağdaki Tüm Cihazları Tarama (Ping Sweep)
- Açıklama: Bir ağda çalışan cihazları bulmak için kullanılır.
- Örnek:
bash nmap -sn 192.168.1.0/24
Bu komut, 192.168.1.0/24 ağındaki tüm aktif cihazları keşfeder. - 8. Belirli Protokolleri Tarama
- Açıklama: Belirli bir protokolü (TCP, UDP, ICMP, vb.) taramak için kullanılır.
- Örnek:
- TCP Tarama:
bash nmap -sT 192.168.1.1
- UDP Tarama:
bash sudo nmap -sU 192.168.1.1
- ICMP Ping Tarama:
bash nmap -PE 192.168.1.1
- TCP Tarama:
- 9. Firewall/IDS Etrafında Tarama (Stealth Scanning)
- Açıklama: Bir güvenlik duvarı veya izleme sistemi (IDS/IPS) tarafından fark edilmeden tarama yapmak için kullanılır.
- Örnek:
- SYN Tarama (Stealth):
sudo nmap -sS 192.168.1.1
Bu tarama yöntemi, TCP üç yönlü el sıkışmayı tamamlamadan önce SYN paketi gönderir ve yanıtı bekler. - ACK Tarama (Firewall Tespiti):
bash sudo nmap -sA 192.168.1.1
Bu tarama, bir güvenlik duvarının mevcut olup olmadığını anlamak için kullanılır. - 10. Tarama Hızını Ayarlama
- Açıklama: Tarama hızını ayarlamak için farklı hız seviyeleri (paranoid, sneaky, polite, normal, aggressive, insane) kullanılır.
- Örnek:
bash nmap -T4 192.168.1.1
-T4
seçeneği, taramanın daha hızlı gerçekleşmesini sağlar.-T0
en yavaş,-T5
en hızlıdır. - 11. Belirli Bir Hedef Dosyadan Alarak Tarama
- Açıklama: Tarama yapılacak hedef IP adreslerini bir dosyadan okuyarak işlem yapar.
- Örnek:
bash nmap -iL hedefler.txt
Bu komut,hedefler.txt
dosyasında listelenen IP adreslerini tarar. - 12. Çıktıyı Dosyaya Yazdırma
- Açıklama: Tarama sonuçlarını belirli bir dosya formatında kaydetmek için kullanılır.
- Örnek:
- Normal Metin Çıktısı:
bash nmap -oN output.txt 192.168.1.1
- Grepable Çıktı (Grep ile analiz edilebilir):
bash nmap -oG output.txt 192.168.1.1
- XML Çıktısı (Daha yapısal bir format):
bash nmap -oX output.xml 192.168.1.1
- Normal Metin Çıktısı:
- 13. Açık Portlar ve Durumlarını Listeleme
- Açıklama: Hedefte açık portları ve durumlarını (open, closed, filtered) görüntüler.
- Örnek:
bash nmap --open 192.168.1.1
Bu komut, sadece açık olan portları gösterir. - 14. Script Motoru ile Gelişmiş Tarama (NSE – Nmap Scripting Engine)
- Açıklama:
nmap
‘in betik motoru (NSE), gelişmiş güvenlik taramaları ve ağ keşifleri yapmak için kullanılır. Yüzlerce betik arasından seçim yaparak özel taramalar gerçekleştirebilirsiniz. - Örnek:
- Hedefin HTTP Başlıklarını Almak:
bash nmap --script=http-headers 192.168.1.1
- Güvenlik Açıkları Tarama:
bash nmap --script=vuln 192.168.1.1
Bu komut, hedef cihaz üzerinde bilinen güvenlik açıklarını tarar.
- Hedefin HTTP Başlıklarını Almak:
- 15. Traceroute ile Tarama
- Açıklama: Tarama sırasında
traceroute
yaparak hedefe giden yolu izler. - Örnek:
bash nmap --traceroute 192.168.1.1
Bu komut, tarama sırasında hedefe ulaşan tüm yönlendiricileri listeler. - 16. IPv6 Tarama
- Açıklama:
nmap
IPv6 adreslerini taramak için de kullanılabilir. - Örnek:
bash nmap -6 2001:db8::1
- 17. Hedef Cihazın MAC Adresini Görüntüleme
- Açıklama: Hedef cihazın MAC adresini ve varsa OUI (Organizationally Unique Identifier) bilgisini gösterir.
- Örnek:
“`bash
sudo nmap -sP 192.
8. tcpdump
- Açıklama: Ağ trafiğini yakalamak ve analiz etmek için kullanılır. Ağ paketlerini gerçek zamanlı olarak izleyebilirsiniz.
- Örnek:
bash sudo tcpdump -i eth0
tcpdump
, ağ trafiğini analiz etmek için kullanılan güçlü bir paket yakalama aracıdır. Ağdaki trafiği gerçek zamanlı olarak izleyebilir, belirli kriterlere göre filtreleyebilir ve ağ sorunlarını gidermek veya güvenlik açıklarını tespit etmek için ayrıntılı analiz yapabilirsiniz.tcpdump
, özellikle ağ yöneticileri ve güvenlik uzmanları tarafından sıklıkla kullanılır. Aşağıdatcpdump
komutunun geniş kullanım alanlarını, çeşitli filtreleme ve analiz teknikleriyle birlikte açıklıyorum.- 1. Temel Kullanım
- Açıklama: Ağ arayüzü üzerinde akan tüm paketleri yakalar ve görüntüler.
- Örnek:
bash sudo tcpdump
Bu komut, varsayılan ağ arayüzünde gerçekleşen tüm ağ trafiğini gerçek zamanlı olarak ekrana yazdırır. - 2. Belirli Bir Ağ Arayüzü Üzerinde Paket Yakalama
- Açıklama: Belirli bir ağ arayüzü üzerinde akan trafiği yakalar.
- Örnek:
sudo tcpdump -i eth0
Bu komut,eth0
ağ arayüzünde akan trafiği yakalar. - Tüm Ağ Arayüzlerini Listeleme:
bash sudo tcpdump -D
Bu komut, sistemdeki tüm ağ arayüzlerini listeler. - 3. Paketleri Bir Dosyaya Kaydetme
- Açıklama: Yakalanan paketleri analiz etmek üzere bir dosyaya kaydeder. Bu dosya daha sonra analiz için
tcpdump
veyaWireshark
gibi araçlarla açılabilir. - Örnek:
sudo tcpdump -i eth0 -w output.pcap
Bu komut,eth0
arayüzündeki trafiğioutput.pcap
dosyasına kaydeder. - Kayıtlı Dosyayı Okuma:
bash sudo tcpdump -r output.pcap
Bu komut, daha önce yakalanmışoutput.pcap
dosyasını okur ve analiz eder. - 4. Belirli Bir IP Adresi için Trafiği Yakalama
- Açıklama: Belirli bir kaynaktan veya hedeften gelen trafiği yakalar.
- Örnek:
- Belirli Bir IP Adresinden Gelen Trafiği Yakalama:
sudo tcpdump -i eth0 src 192.168.1.1
Bu komut,192.168.1.1
IP adresinden gelen trafiği yakalar.- Belirli Bir IP Adresine Giden Trafiği Yakalama:
sudo tcpdump -i eth0 dst 192.168.1.1
Bu komut,192.168.1.1
IP adresine giden trafiği yakalar. - 5. Belirli Bir Port için Trafiği Yakalama
- Açıklama: Belirli bir port numarasına yönelik trafiği filtreler.
- Örnek:
- Belirli Bir Port Üzerindeki Trafiği Yakalama:
sudo tcpdump -i eth0 port 80
Bu komut,eth0
arayüzünde80
numaralı port üzerinden gerçekleşen HTTP trafiğini yakalar.- Kaynak ve Hedef Portu Filtreleme:
sudo tcpdump -i eth0 src port 443
Bu komut,443
portundan kaynaklanan HTTPS trafiğini yakalar. - 6. Belirli Bir Protokole Göre Filtreleme
- Açıklama: Belirli bir protokole yönelik trafiği filtreler (TCP, UDP, ICMP, vb.).
- Örnek:
- TCP Trafiğini Yakalama:
bash sudo tcpdump -i eth0 tcp
- UDP Trafiğini Yakalama:
bash sudo tcpdump -i eth0 udp
- ICMP Trafiğini Yakalama (Ping):
bash sudo tcpdump -i eth0 icmp
- TCP Trafiğini Yakalama:
- 7. TCP SYN Bayrağı ile Trafiği Yakalama
- Açıklama: Yeni TCP bağlantılarını başlatan SYN bayrağını taşıyan paketleri yakalar. Bu, bir bağlantı girişimini gösterir.
- Örnek:
bash sudo tcpdump 'tcp[tcpflags] & tcp-syn != 0'
Bu komut, TCP SYN bayrağı set edilmiş paketleri yakalar. - 8. Bir Subnet için Trafiği Yakalama
- Açıklama: Belirli bir subnetten gelen veya o subnete giden trafiği yakalar.
- Örnek:
bash sudo tcpdump net 192.168.1.0/24
Bu komut,192.168.1.0/24
ağındaki tüm trafiği yakalar. - 9. Belirli Bir Paket Boyutunu Yakalama
- Açıklama: Belirli bir boyuttaki paketleri yakalamak için kullanılır.
- Örnek:
bash sudo tcpdump 'len >= 128'
Bu komut, 128 byte veya daha büyük boyuttaki paketleri yakalar. - 10. Yalnızca Başlık Bilgilerini Gösterme (Tam Paket İçeriği Olmadan)
- Açıklama: Sadece paket başlıklarını göstermek için kullanılır. Bu, trafiği izlemek ama veri içeriğine bakmamak için yararlıdır.
- Örnek:
bash sudo tcpdump -i eth0 -s 0 -v
Bu komut, paket başlıklarını detaylı bir şekilde gösterir (-v
seçeneği detaylı modu etkinleştirir). - 11. DNS Trafiğini Yakalama
- Açıklama: DNS sorgularını ve yanıtlarını yakalamak için kullanılır.
- Örnek:
bash sudo tcpdump -i eth0 udp port 53
Bu komut,eth0
arayüzünde gerçekleşen tüm DNS trafiğini (UDP/53) yakalar. - 12. HTTP GET İsteklerini Yakalama
- Açıklama: HTTP GET isteklerini yakalamak için kullanılır.
- Örnek:
bash sudo tcpdump -A -s 0 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'
Bu komut, HTTP GET isteklerini yakalar ve ASCII formatında görüntüler. - 13. Paket Sayısını Sınırlandırma
- Açıklama: Yakalanacak paket sayısını sınırlandırmak için kullanılır. Bu, ağ trafiğini yakalarken fazla veri birikmesini engeller.
- Örnek:
bash sudo tcpdump -c 10
Bu komut, sadece 10 paket yakalayıp ardından işlemi sonlandırır. - 14. WLAN Trafiğini Yakalama
- Açıklama: Kablosuz ağ arayüzü üzerinden akan trafiği yakalamak için kullanılır.
- Örnek:
bash sudo tcpdump -i wlan0
Bu komut,wlan0
arayüzündeki kablosuz trafiği yakalar. - 15. IPv6 Trafiğini Yakalama
- Açıklama: IPv6 trafiğini yakalamak için kullanılır.
- Örnek:
bash sudo tcpdump ip6
Bu komut, tüm IPv6 trafiğini yakalar. - 16. Belirli Bir MAC Adresi için Trafik Yakalama
- Açıklama: Belirli bir MAC adresine sahip cihazlardan gelen trafiği yakalar.
- Örnek:
bash sudo tcpdump ether host aa:bb:cc:dd:ee:ff
Bu komut, belirtilen MAC adresine sahip cihazla ilgili trafiği yakalar. - 17. Çift Yönlü Trafiği Yakalama
- Açıklama: Hem kaynak hem de hedef olarak belirlenen adresler için trafiği yakalar.
- Örnek:
bash sudo tcpdump host 192.168.1.1
Bu komut, hem `192.168. - 1.1` adresine giden hem de bu adresten gelen trafiği yakalar.
- 18. tcpdump ile Filtreleme
- Açıklama:
tcpdump
, Berkley Packet Filter (BPF) dili ile güçlü filtreleme seçenekleri sunar. Bu, sadece belirli kriterlere uyan trafiği yakalamayı sağlar. - Örnekler:
- Belirli bir kaynaktan gelen TCP trafiği:
bash sudo tcpdump tcp and src host 192.168.1.100
- Belirli bir hedefe giden UDP trafiği:
bash sudo tcpdump udp and dst host 10.0.0.1
- Belirli bir kaynaktan gelen TCP trafiği:
- 19. tcpdump ile Ağ Saldırılarını Yakalama
- Açıklama: Ağ saldırılarını tespit etmek için
tcpdump
kullanabilirsiniz. Örneğin, SYN flood veya diğer DDoS saldırılarını tespit etmek için filtreler oluşturabilirsiniz. - Örnek:
bash sudo tcpdump 'tcp[tcpflags] & tcp-syn != 0 and tcp[tcpflags] & tcp-ack == 0'
Bu komut, SYN flood saldırılarını tespit etmek için kullanılır (çok sayıda SYN paketi, ancak ACK paketi yok). tcpdump
, güçlü filtreleme seçenekleri ve geniş kullanım alanları ile ağ trafiğini analiz etmek ve sorunları gidermek için vazgeçilmez bir araçtır. Ağdaki her türlü trafiği yakalayıp analiz edebilir ve sorunları hızlıca tespit edebilirsiniz.
9. iperf
- Açıklama: Ağ performansını test etmek için kullanılır. Bant genişliği, gecikme süresi ve jitter gibi parametreleri ölçer.
- Örnek:
bash iperf3 -s # Sunucu modu iperf3 -c server_ip # İstemci modu
iperf
, ağ performansını test etmek için kullanılan güçlü ve yaygın bir araçtır. Ağ bağlantısının bant genişliği, gecikme süresi (latency) ve jitter (zamanlama sapması) gibi performans metriklerini ölçer.iperf
kullanarak ağ hızını ve güvenilirliğini test edebilir, ağ üzerinden veri akışı simülasyonları gerçekleştirebilirsiniz.iperf
, hem TCP hem de UDP üzerinden testler yapabilir ve ağ performansını optimize etmek için faydalı bilgiler sağlar.iperf
‘in Genel Kullanım Alanları ve Seçenekleri
Aşağıda,iperf
komutunun çeşitli kullanım alanlarını ve farklı senaryoları açıklayan detaylı bir kılavuz bulabilirsiniz.
1. Temel Kullanım: Sunucu ve İstemci Modlarıiperf
, ağ performansını test etmek için iki modda çalışır: Sunucu (server) ve İstemci (client).
Sunucu Modu:
Açıklama: Sunucu modu,iperf
istemcisinden gelen bağlantıları dinler ve verileri alır.
Örnek:iperf3 -s
Bu komut,iperf
sunucusunu başlatır ve varsayılan olarak port5201
üzerinden bağlantı dinler.
İstemci Modu:
Açıklama: İstemci modu,iperf
sunucusuna bağlanarak ağ performansını test eder.
Örnek:iperf3 -c server_ip
Bu komut, belirtilen IP adresindekiiperf
sunucusuna bağlanarak ağ performansını test eder.
2. TCP Üzerinden Bant Genişliği Testi
Açıklama: Varsayılan olarak,iperf
TCP protokolü üzerinden ağ performansını test eder. Bu test, ağdaki maksimum bant genişliğini ölçer.
Örnek:iperf3 -c server_ip
Bu komut,server_ip
adresindekiiperf
sunucusuna bağlanarak TCP üzerinden bant genişliği testini gerçekleştirir.
Test Süresi Ayarlama:
Açıklama: Varsayılan test süresi 10 saniyedir, ancak bu süreyi değiştirebilirsiniz.
Örnek:bash iperf3 -c server_ip -t 30
Bu komut, test süresini 30 saniye olarak ayarlar.
3. UDP Üzerinden Bant Genişliği Testi
Açıklama: UDP protokolü üzerinden bant genişliği testi gerçekleştirir. Bu test, ağdaki paket kaybını ve jitter’ı da ölçer.
Örnek:iperf3 -c server_ip -u
Bu komut, UDP üzerinden bant genişliği testini gerçekleştirir.
UDP Veri Hızı Ayarlama:
Açıklama: UDP testlerinde veri hızını belirleyebilirsiniz. Varsayılan hız 1 Mbps’dir.
Örnek:bash iperf3 -c server_ip -u -b 10M
Bu komut, UDP üzerinden 10 Mbps hızında veri gönderir.
4. İki Yönlü Test (Bidirectional Test)
Açıklama: Aynı anda hem gönderim hem de alım testi gerçekleştirir. Bu, ağın iki yönlü performansını ölçer.
Örnek:iperf3 -c server_ip -d
Bu komut, iki yönlü (duplex) bant genişliği testini gerçekleştirir.
5. Tersine Test (Reverse Mode)
Açıklama: Tersine test, istemciden sunucuya değil, sunucudan istemciye veri akışını ölçer. Bu, istemcinin veri alım kapasitesini test etmek için kullanılır.
Örnek:iperf3 -c server_ip -R
Bu komut, sunucudan istemciye doğru veri akışını test eder.
6. Belirli Port Üzerinden Test
Açıklama: Varsayılan olarakiperf
, port 5201 üzerinden çalışır, ancak farklı bir port numarası belirleyebilirsiniz.
Örnek:iperf3 -c server_ip -p 8080
Bu komut,8080
portu üzerinden bant genişliği testini gerçekleştirir.
7. Test Sırasında Daha Detaylı Bilgi (Verbose Mode)
Açıklama: Test sırasında daha detaylı bilgi almak için-V
seçeneği kullanılır. Bu, IP paket başlıkları ve diğer düşük seviyeli bilgileri içerir.
Örnek:iperf3 -c server_ip -V
8. Paralel Bağlantılar ile Test (Parallel Connections)
Açıklama: Aynı anda birden fazla bağlantı üzerinden test yapmak, ağın yoğun yük altında nasıl performans gösterdiğini anlamanızı sağlar.
Örnek:iperf3 -c server_ip -P 4
Bu komut, 4 paralel bağlantı üzerinden bant genişliği testini gerçekleştirir.
9. İstemci ve Sunucu Arasında TCP Penceresi Boyutunu Ayarlama
Açıklama: TCP penceresi boyutunu belirleyerek, ağ üzerinden veri aktarımı sırasında performansı optimize edebilirsiniz.
Örnek:iperf3 -c server_ip -w 256K
Bu komut, TCP penceresi boyutunu 256 KB olarak ayarlar.
10. Raporlama Aralığı Ayarlama
Açıklama: Test sırasında her saniyede bir rapor vermek yerine, belirli aralıklarla rapor verilmesini sağlayabilirsiniz.
Örnek:iperf3 -c server_ip -i 5
Bu komut, her 5 saniyede bir bant genişliği raporu verir.
11. Jitter, Paket Kaybı ve Diğer İstatistikler (UDP Testlerinde)
Açıklama: UDP testi sırasında jitter (zamanlama sapması) ve paket kaybı gibi istatistikleri görebilirsiniz.
Örnek:iperf3 -c server_ip -u
UDP testi sırasında, jitter ve paket kaybı gibi verileri raporlar.
12. JSON Formatında Çıktı
Açıklama:iperf
, test sonuçlarını JSON formatında çıktı verebilir. Bu, çıktıyı diğer uygulamalarla entegre etmek veya otomatik analiz yapmak için faydalıdır.
Örnek:iperf3 -c server_ip -J
Bu komut, test sonuçlarını JSON formatında döndürür.
13. Güvenlik: TLS ile Şifrelenmiş Bağlantılar
Açıklama:iperf3
, TLS (Transport Layer Security) kullanarak istemci ve sunucu arasında şifrelenmiş bağlantı sağlayabilir. Bu, testler sırasında veri güvenliğini artırır.
Örnek:iperf3 -s --tls iperf3 -c server_ip --tls
Bu komutlar, sunucu ve istemci arasında TLS şifrelemesi kullanarak güvenli bir bağlantı sağlar.
14. Tersine Trafik Sınırlaması (Reverse Rate Limiting)
Açıklama: Tersine trafik testi sırasında veri hızını sınırlayabilirsiniz.
Örnek:iperf3 -c server_ip -R -b 5M
Bu komut, tersine test sırasında 5 Mbps hızında veri akışı sınırı koyar.
15. İstatistikleri CSV Formatında Çıktı Alma
Açıklama:iperf
, test sonuçlarını CSV formatında çıktı verebilir. Bu, verilerin daha kolay analiz edilmesini sağlar.
Örnek:iperf3 -c server_ip --logfile results.csv --csv
Bu komut, test sonuçlarını CSV formatındaresults.csv
dosyasına kaydeder.
16. Bağlantı Süresi ve Gecikme Testi
Açıklama: TCP bağlantı süresini ve gecikmeyi (latency) ölçmek için kullanılabilir.
Örnek:iperf3 -c server_ip --get-server-output
10. ethtool
- Açıklama: Ağ arayüzlerinin donanım seviyesindeki ayarlarını yönetmek için kullanılır (örneğin, hız ayarları, duplex ayarları).
- Örnek:
bash sudo ethtool eth0
ethtool
, Linux sistemlerinde ağ arayüzlerinin donanım seviyesindeki ayarlarını yönetmek ve bilgilerini görüntülemek için kullanılan bir araçtır. Bu araçla ağ kartlarının hız ve duplex ayarlarını değiştirebilir, Wake-on-LAN (WOL) özelliklerini yönetebilir, donanım offloading (yük aktarımı) özelliklerini yapılandırabilir ve ağ arayüzü hakkında detaylı bilgi alabilirsiniz.ethtool
, ağ yöneticileri ve sistem yöneticileri için ağ performansını optimize etmek ve sorunları gidermek amacıyla kullanılır.ethtool
‘un Genel Kullanım Alanları ve Seçenekleri- Aşağıda
ethtool
komutunun yaygın kullanım alanlarını ve farklı senaryoları anlatan detaylı bir kılavuz bulabilirsiniz. - 1. Ağ Arayüzü Hakkında Bilgi Görüntüleme
- Açıklama: Belirli bir ağ arayüzünün (NIC – Network Interface Card) donanım bilgilerini ve mevcut yapılandırmasını görüntüler.
- Örnek:
bash sudo ethtool eth0
Bu komut,eth0
ağ arayüzü hakkında detaylı bilgi sağlar, örneğin hız, duplex modu, link durumu, ve desteklenen özellikler gibi. - 2. Hız ve Duplex Ayarlarını Değiştirme
- Açıklama: Ağ arayüzünün hız ve duplex ayarlarını manuel olarak yapılandırabilirsiniz (örneğin, 1000 Mbps ve full-duplex).
- Örnek:
sudo ethtool -s eth0 speed 1000 duplex full autoneg off
Bu komut,eth0
arayüzünü 1000 Mbps hızında ve full-duplex modunda çalışacak şekilde ayarlar ve otomatik müzakereyi (autoneg) kapatır. - Önemli Not: Bu değişiklik kalıcı değildir ve sistem yeniden başlatıldığında eski ayarlara döner. Kalıcı hale getirmek için bu ayarları ağ yapılandırma dosyalarına eklemeniz gerekir (örneğin,
/etc/network/interfaces
veyaNetworkManager
yapılandırmaları). - 3. Wake-on-LAN (WOL) Ayarlarını Yapılandırma
- Açıklama: Wake-on-LAN, bir bilgisayarı uzaktan açmak için kullanılan bir özelliktir.
ethtool
ile WOL’u etkinleştirebilir veya devre dışı bırakabilirsiniz. - Örnek:
- Wake-on-LAN Etkinleştirme:
sudo ethtool -s eth0 wol g
Bu komut,eth0
arayüzünde Wake-on-LAN’ı etkinleştirir (g: Magic Packet).- Wake-on-LAN Durumunu Görüntüleme:
sudo ethtool eth0 | grep Wake-on
Bu komut, Wake-on-LAN özelliğinin etkin olup olmadığını gösterir. - 4. Donanım Offloading (Yük Aktarımı) Özelliklerini Yönetme
- Açıklama: Ağ kartları, bazı işlemleri CPU’dan alarak kendi donanımında gerçekleştirebilir (offloading). Bu işlemler arasında checksum hesaplama, TCP segmentation offload (TSO) ve receive side scaling (RSS) gibi özellikler bulunur.
- Örnek:
- Offloading Özelliklerini Görüntüleme:
sudo ethtool -k eth0
Bu komut,eth0
arayüzündeki tüm offloading özelliklerini ve bunların etkin olup olmadığını gösterir.- Checksum Offloading Kapatma:
sudo ethtool -K eth0 rx off tx off
Bu komut,eth0
arayüzünde RX ve TX checksum offloading’i devre dışı bırakır. - 5. Link Durumu ve Ağ Bağlantısı Hakkında Bilgi
- Açıklama: Ağ arayüzünün bağlantı durumunu, hızı ve duplex modunu görüntüleyebilirsiniz.
- Örnek:
bash sudo ethtool eth0 | grep -i "speed\|duplex\|link detected"
Bu komut,eth0
arayüzünün hızını, duplex modunu ve link durumunu görüntüler. - 6. Otomatik Müzakereyi (Auto-Negotiation) Yönetme
- Açıklama: Otomatik müzakere, ağ arayüzü ile karşı cihaz (örneğin, switch) arasındaki hız ve duplex modunu otomatik olarak ayarlayan bir özelliktir.
ethtool
ile bu özelliği etkinleştirebilir veya devre dışı bırakabilirsiniz. - Örnek:
- Otomatik Müzakereyi Etkinleştirme:
bash sudo ethtool -s eth0 autoneg on
- Otomatik Müzakereyi Devre Dışı Bırakma:
bash sudo ethtool -s eth0 autoneg off
- Otomatik Müzakereyi Etkinleştirme:
- 7. Ağ Kartı Sürücü Bilgilerini Görüntüleme
- Açıklama: Ağ kartının hangi sürücü (driver) ile çalıştığını ve sürücü versiyonunu görüntüleyebilirsiniz.
- Örnek:
bash sudo ethtool -i eth0
Bu komut,eth0
arayüzünün sürücü bilgilerini (driver, versiyon, firmware) gösterir. - 8. Ağ Kartı İstatistiklerini Görüntüleme
- Açıklama: Ağ arayüzünün paket istatistiklerini (örneğin, gönderilen/alınan paket sayısı, hata sayısı, vb.) görüntüleyebilirsiniz.
- Örnek:
bash sudo ethtool -S eth0
Bu komut,eth0
arayüzünün detaylı istatistiklerini listeler. - 9. Kapsamlı Bir Test Gerçekleştirme
- Açıklama:
ethtool
, ağ kartında çeşitli donanım testleri gerçekleştirebilir. Bu testler, ağ kartının işlevselliğini kontrol etmek için kullanılır. - Örnek:
bash sudo ethtool -t eth0
Bu komut,eth0
arayüzü üzerinde bir donanım testi gerçekleştirir. Test türüne göre ek seçenekler kullanılabilir. - 10. Bağlantı Partneri Yeteneklerini Görüntüleme
- Açıklama: Ağ kartının bağlı olduğu cihazın (örneğin, switch veya başka bir bilgisayar) yeteneklerini ve ayarlarını görüntüleyebilirsiniz.
- Örnek:
bash sudo ethtool eth0 | grep -A 10 "Advertised link modes"
Bu komut, ağ arayüzünün bağlantı partnerinin desteklediği hız ve duplex modlarını gösterir. - 11. Flow Control Ayarlarını Yönetme
- Açıklama: Ağ arayüzü üzerindeki flow control (akış kontrolü) ayarlarını yönetebilirsiniz. Flow control, ağ cihazları arasındaki veri akışını düzenleyerek veri kaybını önler.
- Örnek:
- Flow Control Bilgilerini Görüntüleme:
bash sudo ethtool -a eth0
- Flow Control Ayarlarını Yapılandırma:
bash sudo ethtool -A eth0 rx on tx on
Bu komut,eth0
arayüzünde hem RX hem de TX flow control’ü etkinleştirir.
- Flow Control Bilgilerini Görüntüleme:
- 12. Cihazın Enerji Tasarrufu Modlarını Yönetme
- Açıklama: Bazı ağ kartları enerji tasarrufu özelliklerine sahiptir.
ethtool
ile bu modları etkinleştirebilir veya devre dışı bırakabilirsiniz. - Örnek:
bash sudo ethtool --show-eee eth0
Bu komut,eth0
arayüzünün enerji tasarrufu modlarını (EEE – Energy-Efficient Ethernet) gösterir. - 13. Permanent MAC Adresi Görüntüleme
- Açıklama:
ethtool
, ağ arayüzünün permanent (kalıcı) MAC adresini görüntüleyebilir. Bu, donanım seviyesinde ayarlanmış olan MAC adresidir. - Örnek:
bash sudo ethtool -P eth0
Bu komut,eth0
arayüzünün kalıcı MAC adresini gösterir. - 14. **Coalesce Ayarlarını
- Yapılandırma**
- Açıklama: Coalescing, ağ kartının CPU üzerindeki yükünü azaltmak için paketleri birleştirerek işleme alır.
ethtool
, bu ayarları yönetmenize olanak tanır. - Örnek:
bash sudo ethtool -C eth0 rx-usecs 30
Bu komut,eth0
arayüzünde RX tarafında paketleri 30 mikro saniye birleştirerek işler. ethtool
, ağ kartı donanımı üzerinde derinlemesine kontrol sağlar ve ağ performansını optimize etmek, sorunları gidermek veya yapılandırmaları incelemek için kullanılır.ethtool
komutunu doğru bir şekilde kullanarak ağ kartlarınızı daha etkili yönetebilir ve donanım özelliklerinden en iyi şekilde yararlanabilirsiniz.
11. nmcli
- Açıklama: NetworkManager’ı komut satırından yönetmek için kullanılır. Ağ bağlantılarını yapılandırabilir, etkin bağlantıları görüntüleyebilir ve yönetebilirsiniz.
- Örnek:
bash nmcli device status
12. netcat (nc)
- Açıklama: Ağ bağlantıları kurmak, bağlantı noktası dinlemek ve veri aktarımı yapmak için kullanılan çok yönlü bir araçtır.
- Örnek:
- Bir portu dinlemek:
bash nc -l 1234
- Veri göndermek:
bash echo "Merhaba" | nc 192.168.1.100 1234
- Bir portu dinlemek:
13. iwconfig
- Açıklama: Kablosuz ağ arayüzlerini yapılandırmak ve yönetmek için kullanılır (SSID ayarları, şifreleme vb.).
- Örnek:
bash iwconfig
14. mtr
- Açıklama:
ping
vetraceroute
araçlarının birleşimi gibi çalışır, hedefe giden yolları ve gecikmeleri sürekli olarak izler. - Örnek:
bash mtr google.com
15. vnstat
- Açıklama: Ağ trafiğini izler ve veri kullanımı hakkında istatistikler tutar. Kullanılan bant genişliği miktarını takip edebilirsiniz.
- Örnek:
bash vnstat -l
16. arp
- Açıklama: ARP (Address Resolution Protocol) tablolarını görüntülemek ve yönetmek için kullanılır.
- Örnek:
bash arp -a
Bu araçlar, Linux tabanlı sistemlerde ağ yönetimi ve analiz için en yaygın kullanılan araçlar arasındadır. Sistem yöneticileri ve ağ uzmanları bu araçları kullanarak ağ trafiğini izleyebilir, sorunları tespit edebilir ve performans iyileştirmeleri yapabilir.