13 Linux Ağ Yapılandırması ve Sorun Giderme Komutları
Bilgisayarlar birbirleriyle bilgi veya kaynak alışverişi yapmak için bir ağa bağlanır. İki veya daha fazla bilgisayar, bilgisayar ağı adı verilen ağ ortamı aracılığıyla bağlanır. Bir bilgisayar ağını oluşturmak için çok sayıda ağ aygıtı veya ortamı bulunur.
Linux İşletim Sistemi yüklü bilgisayar, çok görevli ve çok kullanıcılı yapısı nedeniyle ister küçük ister büyük bir ağ olsun, ağın bir parçası olabilir. Sistemin ve ağın çalışır durumda kalmasını sağlamak Sistem/Ağ Yöneticisinin işinin bir görevidir.
Bu yazımızda Linux'ta sık kullanılan ağ yapılandırmasını ve sorun giderme komutlarını inceleyeceğiz.
1. ifconfig Komutu
ifconfig (arayüz yapılandırıcı) komutu, bir arayüzü başlatmak, arayüze IP Adresi atamak ve etkinleştirmek veya etkinleştirmek için kullanılır. isteğe bağlı olarak arayüzü güçlü>devre dışı bırakın.
Bu komutla arayüze atanan IP Adresini ve Donanım/MAC adresini ve ayrıca MTU'yu (< Strong>Maksimum iletim birimi) boyutu.
ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:28:FD:4C
inet addr:192.168.50.2 Bcast:192.168.50.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:6093 errors:0 dropped:0 overruns:0 frame:0
TX packets:4824 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6125302 (5.8 MiB) TX bytes:536966 (524.3 KiB)
Interrupt:18 Base address:0x2000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:480 (480.0 b) TX bytes:480 (480.0 b)
arayüz (eth0) komutuyla ifconfig yalnızca IP Adresi, MAC Adresi vb. gibi belirli arayüz ayrıntılarını gösterir. -a
seçeneği, eğer devre dışı bırakılırsa, mevcut tüm arayüz ayrıntılarını gösterecektir.
ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:0C:29:28:FD:4C
inet addr:192.168.50.2 Bcast:192.168.50.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:6119 errors:0 dropped:0 overruns:0 frame:0
TX packets:4841 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6127464 (5.8 MiB) TX bytes:539648 (527.0 KiB)
Interrupt:18 Base address:0x2000
Linux'ta IP Adresini ve Ağ Geçidini Ayarlama
Anında arayüze bir IP Adresi ve Ağ Geçidi atama. Sistemin yeniden başlatılması durumunda ayar kaldırılacaktır.
ifconfig eth0 192.168.50.5 netmask 255.255.255.0
Belirli Arayüzü Etkinleştirme veya Devre Dışı Bırakma
Belirli bir Arayüzü etkinleştirmek veya devre dışı bırakmak için aşağıdaki örnek komutu kullanırız.
Eth0'ı etkinleştir
ifup eth0
Eth0'ı devre dışı bırak
ifdown eth0
MTU Boyutunun Ayarlanması
Varsayılan olarak MTU boyutu 1500'dür. Aşağıdaki komutla gerekli MTU boyutunu ayarlayabiliriz. XXXX'i boyutla değiştirin.
ifconfig eth0 mtu XXXX
Arayüzü Karışık Modda Ayarlayın
Ağ arayüzü yalnızca söz konusu NIC'e ait paketleri aldı. Arayüzü rasgele moduna geçirirseniz tüm paketleri alacaktır. Bu, paketleri yakalamak ve daha sonra analiz etmek için çok kullanışlıdır. Bunun için süper kullanıcı erişimine ihtiyacınız olabilir.
ifconfig eth0 - promisc
Güncelleme: Çoğu modern Linux dağıtımında ifconfig komutunun yerini IP komutu almıştır.
2. Ping Komutu
Ping (Packet INternet Groper) komutu, iki düğüm arasındaki bağlantıyı test etmenin en iyi yoludur. İster Yerel Alan Ağı (LAN) ister Geniş Alan Ağı (WAN) olsun.
Ping, diğer cihazlarla iletişim kurmak için ICMP'yi (İnternet Kontrol Mesajı Protokolü) kullanır. Aşağıdaki komutları kullanarak ana makine adına veya ip adresine ping atabilirsiniz.
ping 4.2.2.2
PING 4.2.2.2 (4.2.2.2) 56(84) bytes of data.
64 bytes from 4.2.2.2: icmp_seq=1 ttl=44 time=203 ms
64 bytes from 4.2.2.2: icmp_seq=2 ttl=44 time=201 ms
64 bytes from 4.2.2.2: icmp_seq=3 ttl=44 time=201 ms
OR
# ping linux-console.net
PING linux-console.net (50.116.66.136) 56(84) bytes of data.
64 bytes from 50.116.66.136: icmp_seq=1 ttl=47 time=284 ms
64 bytes from 50.116.66.136: icmp_seq=2 ttl=47 time=287 ms
64 bytes from 50.116.66.136: icmp_seq=3 ttl=47 time=285 ms
Linux ping komutunu siz kesene kadar çalıştırmaya devam edin. N sayıda istekten sonra (başarılı veya hata yanıtı) -c
seçeneğiyle ping yapın.
ping -c 5 linux-console.net
PING linux-console.net (50.116.66.136) 56(84) bytes of data.
64 bytes from 50.116.66.136: icmp_seq=1 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=2 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=3 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=4 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=5 ttl=47 time=285 ms
--- linux-console.net ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4295ms
rtt min/avg/max/mdev = 285.062/285.324/285.406/0.599 ms
3. Traceroute Komutanlığı
traceroute, bir hedefe ulaşmak için atılan atlama sayısını gösteren ve aynı zamanda paketlerin seyahat yolunu belirleyen bir ağ sorun giderme yardımcı programıdır. Aşağıda global DNS sunucusu IP Adresine giden rotayı izliyoruz ve hedefe ulaşabiliyor olmamız aynı zamanda o paketin seyahat ettiği yolu da gösteriyor.
traceroute 4.2.2.2
traceroute to 4.2.2.2 (4.2.2.2), 30 hops max, 60 byte packets
1 192.168.50.1 (192.168.50.1) 0.217 ms 0.624 ms 0.133 ms
2 227.18.106.27.mysipl.com (27.106.18.227) 2.343 ms 1.910 ms 1.799 ms
3 221-231-119-111.mysipl.com (111.119.231.221) 4.334 ms 4.001 ms 5.619 ms
4 10.0.0.5 (10.0.0.5) 5.386 ms 6.490 ms 6.224 ms
5 gi0-0-0.dgw1.bom2.pacific.net.in (203.123.129.25) 7.798 ms 7.614 ms 7.378 ms
6 115.113.165.49.static-mumbai.vsnl.net.in (115.113.165.49) 10.852 ms 5.389 ms 4.322 ms
7 ix-0-100.tcore1.MLV-Mumbai.as6453.net (180.87.38.5) 5.836 ms 5.590 ms 5.503 ms
8 if-9-5.tcore1.WYN-Marseille.as6453.net (80.231.217.17) 216.909 ms 198.864 ms 201.737 ms
9 if-2-2.tcore2.WYN-Marseille.as6453.net (80.231.217.2) 203.305 ms 203.141 ms 202.888 ms
10 if-5-2.tcore1.WV6-Madrid.as6453.net (80.231.200.6) 200.552 ms 202.463 ms 202.222 ms
11 if-8-2.tcore2.SV8-Highbridge.as6453.net (80.231.91.26) 205.446 ms 215.885 ms 202.867 ms
12 if-2-2.tcore1.SV8-Highbridge.as6453.net (80.231.139.2) 202.675 ms 201.540 ms 203.972 ms
13 if-6-2.tcore1.NJY-Newark.as6453.net (80.231.138.18) 203.732 ms 203.496 ms 202.951 ms
14 if-2-2.tcore2.NJY-Newark.as6453.net (66.198.70.2) 203.858 ms 203.373 ms 203.208 ms
15 66.198.111.26 (66.198.111.26) 201.093 ms 63.243.128.25 (63.243.128.25) 206.597 ms 66.198.111.26 (66.198.111.26) 204.178 ms
16 ae9.edge1.NewYork.Level3.net (4.68.62.185) 205.960 ms 205.740 ms 205.487 ms
17 vlan51.ebr1.NewYork2.Level3.net (4.69.138.222) 203.867 ms vlan52.ebr2.NewYork2.Level3.net (4.69.138.254) 202.850 ms vlan51.ebr1.NewYork2.Level3.net (4.69.138.222) 202.351 ms
18 ae-6-6.ebr2.NewYork1.Level3.net (4.69.141.21) 201.771 ms 201.185 ms 201.120 ms
19 ae-81-81.csw3.NewYork1.Level3.net (4.69.134.74) 202.407 ms 201.479 ms ae-92-92.csw4.NewYork1.Level3.net (4.69.148.46) 208.145 ms
20 ae-2-70.edge2.NewYork1.Level3.net (4.69.155.80) 200.572 ms ae-4-90.edge2.NewYork1.Level3.net (4.69.155.208) 200.402 ms ae-1-60.edge2.NewYork1.Level3.net (4.69.155.16) 203.573 ms
21 b.resolvers.Level3.net (4.2.2.2) 199.725 ms 199.190 ms 202.488 ms
4. Netstat Komutanlığı
Netstat (Ağ İstatistikleri) komutu bağlantı bilgilerini, yönlendirme tablosu bilgilerini vb. görüntüler. Yönlendirme tablosu bilgilerini görüntülemek için seçeneği -r
olarak kullanın.
netstat -r
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.50.0 * 255.255.255.0 U 0 0 0 eth0
link-local * 255.255.0.0 U 0 0 0 eth0
default 192.168.50.1 0.0.0.0 UG 0 0 0 eth0
Netstat Komutu ile ilgili daha fazla örnek için lütfen Linux'taki 20 Netstat Komut Örneği hakkındaki önceki makalemizi okuyun.
Güncelleme: Çoğu modern Linux dağıtımında netstat komutunun yerini ss (soket istatistikleri) komutu almıştır.
5. Kazma Komutu
A Kaydı, CNAME gibi DNS ile ilgili bilgileri kazın (alan bilgisi arama) sorgusu , MX Kaydı vb. Bu komut esas olarak DNS ile ilgili sorgularda sorun gidermek için kullanılır.
dig linux-console.net; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6 <<>> linux-console.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<
Dig Komutu ile ilgili daha fazla örnek için lütfen DNS Sorgulamak için 10 Linux Kazma Komutu hakkındaki makaleyi okuyun.
6. Nslookup Komutu
nslookup komutu ayrıca DNS ile ilgili sorguları bulmak için de kullanılır. Aşağıdaki örneklerde linux-console.net'un A
Kaydı (IP Adresi) gösterilmektedir.
nslookup linux-console.net
Server: 4.2.2.2
Address: 4.2.2.2#53
Non-authoritative answer:
linux-console.net canonical name = linux-console.net.
Name: linux-console.net
Address: 50.116.66.136
Daha fazla Nslookup Komutu için 8 Linux Nslookup Komut Örneği hakkındaki makaleyi okuyun.
7. Rota Komutanlığı
route komutu ayrıca ip yönlendirme tablosunu gösterir ve yönetir. Linux'ta varsayılan yönlendirme tablosunu görmek için aşağıdaki komutu yazın.
route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.50.0 * 255.255.255.0 U 0 0 0 eth0
link-local * 255.255.0.0 U 1002 0 0 eth0
default 192.168.50.1 0.0.0.0 UG 0 0 0 eth0
Aşağıdaki komutlarla rotaları ve varsayılan Ağ Geçidini ekleme, silme.
Linux'ta Rota Ekle
route add -net 10.10.10.0/24 gw 192.168.0.1
Linux'ta Rotayı Sil
route del -net 10.10.10.0/24 gw 192.168.0.1
Linux'ta Varsayılan Ağ Geçidi Ekleme
route add default gw 192.168.0.1
8. Ana Bilgisayar Komutu
IP veya IP'ye IPv4 veya IPv6'da ad vermek için bir ad bulmak için host komutu > ve ayrıca DNS kayıtlarını sorgulayın.
host www.google.com
www.google.com has address 173.194.38.180
www.google.com has address 173.194.38.176
www.google.com has address 173.194.38.177
www.google.com has address 173.194.38.178
www.google.com has address 173.194.38.179
www.google.com has IPv6 address 2404:6800:4003:802::1014
CNAME, NS, MX, SOA gibi DNS Kaynak Kayıtlarını bulmak için -t
seçeneğini kullanmak , vb.
host -t CNAME www.redhat.com
www.redhat.com is an alias for wildcard.redhat.com.edgekey.net.
9. Arp Komutanlığı
ARP (Adres Çözümleme Protokolü), çekirdeğin ARP tablolarının içeriğini görüntülemek/eklemek için kullanışlıdır. Varsayılan tabloyu görmek için as komutunu kullanın.
arp -e
Address HWtype HWaddress Flags Mask Iface
192.168.50.1 ether 00:50:56:c0:00:08 C eth0
10. Ethtool Komutanlığı
ethtool, mii-tool'un yerini almıştır. Ağ Arayüz Kartınızın(NIC) görüntülenmesi, hızının ve çift yönlülüğünün ayarlanmasıdır. /etc/sysconfig/network-scripts/ifcfg-eth0 dosyasında ETHTOOL_OPTS değişkeni ile duplex'i kalıcı olarak ayarlayabilirsiniz.
ethtool eth0
Settings for eth0:
Current message level: 0x00000007 (7)
Link detected: yes
11. Iwconfig Komutu
Linux'taki iwconfig komutu, bir kablosuz ağ arayüzünü yapılandırmak için kullanılır. SSID kanalı ve şifreleme gibi temel Kablosuz ayrıntılarını görebilir ve ayarlayabilirsiniz. Daha fazlasını öğrenmek için iwconfig'in man sayfasına bakabilirsiniz.
iwconfig [interface]
12. Ana Bilgisayar Adı Komutu
Ana makine adı bir ağda tanımlamak içindir. Kutunuzun ana bilgisayar adını görmek için ana bilgisayar adı komutunu çalıştırın. Ana makine adını /etc/sysconfig/network'de kalıcı olarak ayarlayabilirsiniz. Uygun bir ana bilgisayar adı ayarladıktan sonra kutuyu yeniden başlatmanız gerekir.
hostname
linux-console.net
13. Nmcli ve Nmtui Araçları
Nmcli ve Nmtui araçları ağ ayarlarını yapılandırmak için kullanılır ve ayrıca Linux sistemlerinde ağ cihazlarını yönetmek, ağ bağlantılarını oluşturmak, değiştirmek, etkinleştirmek/devre dışı bırakmak ve silmek için kullanılır.
nmcli
nmtui
Bu makale, Linux/Unix benzeri işletim sistemlerinde Linux Ağ yöneticilerinin günlük kullanımı için yararlı olabilir. Eğer kaçırmışsak lütfen yorum kutumuz aracılığıyla paylaşın.