23 Mart 2017 Perşembe

Linux route komutu kullanımı

route — IP yönlendirme tablosunu yönetir/içeriğini gösterir. Bir arayüz üzerinden, belirtilmiş konaklara veya ağlara sabit yönlendirme yapmaktır. add veya del seçeneği kullanıldığı durumlarda, route uygulaması yönlendirme tablosunu tekrar düzenler. Şayet bu seçenekler kullanılmamışsa, o an geçerli olan yönlendirme tablosunu görüntülenir.
Paremetreleri:
-A aile
Tanımlanan adres ailesi kullanılir. (Örneğin: `inet') Tam listeyi elde etmek için route -–help komutunu kullanın.
-F
Çekirdeğin FIB (Forwarding Information Base) yönlendirme tablosu üzerinden işlem yapar. Öntanımlıdır.
-C
Çekirdeğin yönlendirme arabelleği üzerinden işlem yapar.
-v
Daha ayrıntılı bilgi verilir.
-n
Sembolik konak isimlerini saptamaya çalışmadan adreslerin sayısal değerlerini gösterir. DNS bağlantı yolunuzun ortadan kaybolduğu durumlarda oldukça kullanışlı bir seçenektir.
-n
Sembolik konak isimlerini saptamaya çalışmadan adreslerin sayısal değerlerini gösterir. DNS bağlantı yolunuzun ortadan kaybolduğu durumlarda oldukça kullanışlı bir seçenektir.
-e
Yönlendirme tablosunu görüntülemek için için netstat(8) biçimini kullanır.
-ee
Yönlendirme tablosundaki bütün parametreler ile oldukça uzun bir satır görüntülenmesine sebep olur.
del
Belirtilen yolu siler.
add
Belirtilen yolu ekler.
target
hedef ağ veya konak. Noktalar ile ayrılmış sayısal değerleri kullanabileceğiniz gibi ağ/konak ismini de yazabilirsiniz.
-net
Hedefin bir ağ olduğunu gösterir.
-host
Hedefin bir konak olduğunu gösterir.
netmask ağmaskesi
Yeni bir ağ yolu eklenirken kullanılacak ağ maskesini gösterir.
gw ağgeçidi
Paketler bu ağgeçidi üzerinden yollanır.
Not:Belirtilen ağgeçidi ilk ulaşılan olmalıdır. Bunun anlamı, öncelikle ağ geçidine sabit bir yol tanımlamış olmanız gerektiğidir. Şayet yerel arabirimlerden birinin adresini tanımlarsanız, paketlerin hangi arabirim üzerinden gönderileceğini belirtmiş olursunuz.
metric N
Yönlendirme tablosundaki metric alanını (yönlendirme süreçleri tarafından kullanılan), belirtilen N değerine ayarlar.
window P
Bu yol üzerinden yapılan işlemlerde TCP pencere boyutunu P değerine göre ayarlar. Bu genelde AX.25 ağlarda ve peşpeşe gelen pencereler ile uyumsuz sürücülerin olması durumunda kullanılır.
irtt I
Bu yol üzerinden yapılan bağlantılarda ilk tam dönüş süresi (irtt- initial round trip time) I milisaniye olarak ayarlanır. Bu değer 1-12000 arası olabilir. Bu seçenek genellikle AX.25 ağlarda kullanılır. Şayet belirtilmezse, RFC 1122 öntanımlısı olan 300 ms’lik süre kullanılır.
reject
Bir yol aramasının başarısız olmasını sağlamak için engelleyici bir yol oluşturur. Bu seçenek, öntanımlı yolun kullanılmasından önce, ağların gizlenmesini sağlamak amacı ile kullanılabilir. BU, GÜVENLİK DUVARI OLUŞTURMA ANLAMINDA ELE ALINMMALIDIR.
moddynreinstate
Düzeltilmiş veya dinamik bir yönlendirme yapar. Bu seçenekler teşhis amaçlıdır ve genelde sadece yönlendirme süreçleri tarafından kullanılırlar.
dev If
Yolun belirtilen aygıtla ilişkilendirilmesini güçlendirmek amacı ile kullanılır. Böylece çekirdeğin kendi içindeki aygıtı tespit etme denemesi yapmasına gerek kalmaz. Normal ağlar için bu seçeneğe ihtiyaç yoktur.
Şayet dev If komut satırındaki son seçenek ise, dev kelimesi belitilmeyebilir (zaten öntanımlıdır). Aksi takdirde yol düzenleyici seçeneklerinin sırası zaten önemli değildir (metric - netmask - gw – dev).
Özet:
1- # route -n : route tablosunu görüntüler
2- # route -Cen : routing cache'ni ve route tablosunu görüntüler.
3- # route add -net x.x.x.x netmask x.x.x.x gw x.x.x.x : statik route eklemek için
4- # route add -host x.x.x.x gw x.x.x.x : bir host içini statik route eklemek için.
5- # route add -host x.x.x.x dev eth1 :Statik route'u interface bazlı vermek için.
6- # route add default gw x.x.x.x :Default gateway eklemek için.
7- # route del -host/net : girilen route'ları silmek için
8- # ip route add default gw x.x.x.x : ip route komutu ile gateway girme.
9- # ip route del : Girilen route'u silme.
10-# ip route show: Route tablosunu görüntüleme
11-# ip route flush cache: route cache tablosunu temizleme.
Örnekler:
Kalıcı olmayan default route ekleme ve silme
# route add default gw 192.168.17.1
# route del default gw 192.168.17.1
Kalıcı default route
/etc/sysconfig/network dosyasına default route 'u eklememiz gerekmektedir.
GATEWAY=192.168.17.1
 
Kalıcı işlemlerde eklediğimiz route'un aktif olabilmesi için network servisini yeniden başlatmamız gerekmektedir.
# service network restart
Kalıcı route ekleme ve silme 
/etc/sysconfig/network-scripts/route-ethx dosyasına route'u eklememiz gerek. Burada ethx 'x' interface'ini temsil etmektedir.
# echo '172.16.106.0/24 via 192.168.7.1' >> /etc/sysconfig/network-scripts/route-eth0
'>' yerine '>>'  ı kullanarak eth0 interface'i için daha önceden yazılmış olan routelarımızın silinmesinin önüne geçmiş oluyoruz.
Daha sonra servis restart yapmamız gerekmektedir.
# service network restart
Kalıcı olmayan route ekleme ve silme
# ip route add 172.16.106.0/24 via 192.168.7.1 eth0
Bu şekilde network servis restartına gerek kalmadan route tablomuza ekleme yapmış oluruz. Ayrıca kalıcı olmasını da istiyorsak üstteki şekilde yazabiliriz.
# route -n ile eklediğimiz route'ları görebiliriz.
Örnek:
# ip route add 10.0.0.0/24 via 192.168.1.10
Bu örneğe göre sisteme 10.0.0.0/24 networküne giden paketleri 192.168.1.10 ip’li gateway üzerinden göndermesi söyleniyor.
Routingi, bir network interface’i belirterek girmek için ise komut şu şekildedir:
# ip route add 10.0.0.0/24 dev eth0
Bu örneğe göreyse 10.0.0.0/24 networküne gidecek paketler, eth0 isimli network interface’i üzerinden gönderilecektir.
 
Ağ bağdaştırıclarından eth0 kartı için Default Gateway(Varsayılan Ağgeçidi) atamak için: route add default gw 192.168.1.1
 
ROUTING TABLOSUNUN GÖRÜNTÜLENMESİ
netstat -nr
GEÇERLİ GATEWAY ADRESİNİN DEĞİŞTİRİLMESİ
route add default gw 192.168.0.1 eth0
Bu işlemin kalıcı olması ve her açılışta default gateway adresini girmemek için /etc/sysconfig/network dosyası altına gateway parametresini eklemeniz yeterli olacaktır.
NETWORKING=yes
HOSTNAME=dene-01
GATEWAY= 192.168.0.1
İKİ DEĞİŞİK GATEWAY ADRESİNİN TANIMLANMASI:
Internet çıkış router IP adres(Gateway) : 192.168.0.1
Şirket içi çıkış router IP adres(Gateway) : 192.168.0.2
iki değişik yoldan bu iki gateway adresini tanımlayabiliriz. İlk olarak geçici tanımlamaya bakalım.
route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.0.2 eth0
-net anahtarı bizim network’e yönlendirme yaptığımızı belirtiyor. Eğer belirli bir sunucuya yönlendirme yapmak istiyorsak;
route add -host 10.0.0.1 gw 192.168.0.2 eth0
Komutunu girmemiz yeterli olacaktır. Buradaki –host anahtarı belirli bir makine IP sini belirtir.
Bu girişleri daimi yapmak için yukarıdaki komutları /etc/rc.d/rc.local adresine girmeniz yeterli olacaktır.
ROUTE TABLOLARININ SİLİNMESİ
Route tablolarını silmek için route del komutunu –net anahtarı ile kullanmanız gerekecektir. Ayrıca eğer bu route için /etc/sysconfig/network-scripts altında bir dosya yaratmışsanız o dosyayı da sistemden silmek zorundasınız.
route del -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.0.2 eth0
Herhangi bir sunucu route’ı silmek için
route del -host 10.0.0.1 gw 192.168.0.2 eth0
örnek:
Sunucumuzda makine ismi (hostname) değiştirmek;
# hostname
dene-lnx.localdomain

-- Sunucumuzda yeni makine ismini atıyoruz.

# hostname dene-cnt.dene.net 
-- Yaptığımız değişikliğin kalıcı olabilmesi için gerekli düzenlemeleri yapıyoruz.
# vim /etc/sysconfig/network 
NETWORKING=yes 
HOSTNAME=dene-cnt.dene.net 
GATEWAY=192.168.2.254 
# vim /etc/hosts 
127.0.0.1 localhost.dene.net localhost 
192.168.2.121 dene-cnt.dene.net dene-cnt 
-- Yaptığımız değişikliklerin geçerli olabilmesi için sunucumuzu yeniden başlatıyoruz. 
# shutdown -r now
Sunucumuzda IP Adresimizi, Ağ Geçidimizi, DNS Adreslerimizi vb. değiştirmek;
# ifconfig
# vim /etc/sysconfig/network-scripts/ifcfg-eth1

HWADDR=00:0C:29:11:1B:75
NAME=eth1
TYPE=Ethernet
BOOTPROTO=none
IPADDR=192.168.2.121
PREFIX=24
GATEWAY=192.168.2.254
DNS1=192.168.2.1
DOMAIN=koraykey.net
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
UUID=d4b46489-fb88-41e5-a732-3c20f94dbd74
ONBOOT=yes
LAST_CONNECT=1374405462

-- Sunucumuzda düzenleyebileceğimiz ağ kartlarımızın yapılandırması bu dizinde
tutulmaktadır. Burada kartlarımızı sorgulayıp istediğimiz "interface" üzerinde
değişiklik yapabiliriz.

# ls -l /etc/sysconfig/network-scripts/

-rw-r--r--  1 root root   276 Jul 21 14:19 ifcfg-eth1
-rw-r--r--. 1 root root   254 Jan  9  2013 ifcfg-lo
.
.
.

-- Sunucumuzda varsayılan ağ geçidini değiştirmek için aşağıdak işlemleri
uyguluyoruz.

# vim /etc/sysconfig/network

GATEWAY=192.168.2.1

-- DNS sunucu adreslerimizi düzenlemek için aşağıdaki işlemleri uyguluyoruz.

# vim /etc/resolv.conf

search dene.net
nameserver 192.168.2.1
nameserver 8.8.8.8
nameserver 8.8.4.4

-- Yapmış olduğumuz ayarların hemen geçerli olabilmesi için ağ servisimizi
yeniden başlatıyoruz.

# service network restart

Shutting down interface eth1:   [  OK  ]
Shutting down loopback interface:  [  OK  ]
Bringing up loopback interface:  [  OK  ]
Bringing up interface eth1:  [  OK  ]

-- Ayarlarımızın geçerli olması için istersek sistemimizi yeniden başlatabiliriz.

# shutdown -r now
Sunucumuzda bir ağ kartına birden fazla IP Adresi atamak istiyorsak
 
-- Sunucumuzda ikinci IP Adresi atayacağımız kartımıza sanal "interface" ekliyoruz.

# ifconfig eth1:0 192.168.2.130 netmask 255.255.255.0 up

-- Atamış olduğumuz ikinci IP Adresini kontrol ediyoruz.

# ping -c 3 192.168.2.130

PING 192.168.2.130 (192.168.2.130) 56(84) bytes of data.
64 bytes from 192.168.2.130: icmp_seq=1 ttl=64 time=0.074 ms
64 bytes from 192.168.2.130: icmp_seq=2 ttl=64 time=0.027 ms
64 bytes from 192.168.2.130: icmp_seq=3 ttl=64 time=0.032 ms

--- 192.168.2.130 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2028ms
rtt min/avg/max/mdev = 0.027/0.044/0.074/0.021 ms

-- Yapmış olduğumuz ayarların kalıcı olabilmesi için yapılandırma dosyamızı
oluşturuyoruz.

# cp /etc/sysconfig/network-scripts/ifcfg-eth1 /etc/sysconfig/network-scripts/ifcfg-eth1:0

# vim /etc/sysconfig/network-scripts/ifcfg-eth1:0

HWADDR=00:0C:29:11:1B:75
NAME=eth1:0
TYPE=Ethernet
BOOTPROTO=none
IPADDR=192.168.2.130
PREFIX=24
ONBOOT=yes

-- Oluşturduğumuz sanal "interface" kapatıp açıyoruz.

# ifdown ifcfg-eth1:0
# ifup ifcfg-eth1:0

-- Yapmış olduğumuz ayarların hemen geçerli olabilmesi için ağ servisimizi
yeniden başlatıyoruz.

# service network restart

-- Ayarlarımızın geçerli olması için istersek sistemimizi yeniden başlatabiliriz.

# shutdown -r now
Sunucumuzda “route table” yönlendirme tablosunu ile ilgili işlemleri
-- Sunucumuzda "route table" yönlendirme tablosunu görüntülemek için aşağıdaki
komutu çalıştırmalıyız.

# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.2.1     0.0.0.0         UG    0      0        0 eth1
link-local      *               255.255.0.0     U     1002   0        0 eth1
192.168.2.0     *               255.255.255.0   U     0      0        0 eth1

-- Sunucumuzda varsayılan ağ geçidi atamak için aşağıdaki komutu çalıştırmalıyız.

# route add default gw 192.168.2.1 eth1

-- Bu işlemin kalıcı olması ve her açılışta default gateway adresini girmemek için
aşağıdaki işlemleri yapmamız yeterli olacaktır.

# vim /etc/sysconfig/network

GATEWAY=192.168.2.1

-- Sunucumuzda statik yönlendirme (static route) işlemi için aşağıdaki komutları
çalıştırmalıyız.

# route add -net 192.168.0.0 netmask 255.0.0.0 gw 192.168.2.1 dev eth1

-- Sunucumuzda statik yönlendirme (static route) işlemini kaldırmak için aşağıdaki
komutları çalıştırmalıyız.

# route del -net 192.168.2.121 netmask 255.255.255.0 gw 192.168.2.1 dev eth1

-- Sunucumuzda iki değişik statik yönlendirme (static route) işlemi için aşağıdaki
komutları çalıştırmalıyız.

Örnek;

Internet çıkış router IP adres (Gateway)  : 192.168.2.1

Şirket içi çıkış router IP adres (Gateway)  : 192.168.2.254

# route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.2.1 dev eth1

# route add -net 192.168.0.0 netmask 255.0.0.0 gw 192.168.2.254 dev eth1
 
Kaynak: http://www.koraykey.com, http://www.cozumpark.com/forums/thread/119472.aspx, http://www.hakanuzuner.com/index.php/linux-zerinde-network-islemleri.html,  http://www.belgeler.org/man/man8/man8-route.html, http://huseyin-aytekin.blogspot.com.tr/2014/11/linux-route-islemleri.html,  https://www.syslogs.org/question/linux-sistemlerde-static-route-eklemek/
 
 

Hiç yorum yok :

Yorum Gönder