Varsayılan rota defaultroute seçeneği ile ya da /etc/ppp/ip-up betiğiyle ayarlanabilir;
#!/bin/bash
case $2 in
/dev/ttyS1)
/sbin/route add -net 0.0.0.0 gw rem_ip netmask 0.0.0.0
;;
esac
ip-up aynı zamanda sistem saatinizi netdate kullanarak eşzamanlamak için kullanılabilir.
Rotanın ip-up içinde varsayılan rota olarak ayarlanması zorunlu değildir.
Sizin ip-up'ınız uzak ağdaki rotayı ayarlarlarken, uzak sistemdeki ip-up betiği de sizin ağınıza erişmek için gereken rotayı ayarlar. Eğer ağınız 192.168.1.0 ve ppp arayüzünüz 192.168.1.1 ise, uzak sistemdeki ip-up betiği aşağıdaki gibi olmalıdır;
#!/bin/bash
case $2 in
/dev/ttyS1)
/sbin/route add -net 192.168.1.0 gw 192.168.1.1 netmask 255.255.255.0
;;
esac
case $2 ve
/dev/ttyS1) birden fazla ppp bağlantınız olduğu durumlarda işinize yarar.
ip-up bağlantı kurulduğu her sefer çalışacaktır, ama sadece
/dev/ttySx) ve
;; arasındakiler işletilecektir ve doğru
ttyS için rota belirlenecektir. Yönlendirme hakkında daha fazla bilgiyi
Linux Ağ Oluşturma NASIL belgesinde bulabilirsiniz.
Bazı sistemler temel bir tty üzerinden yönlendiremedikleri zaman dinamik ttys kullanmayı tercih ederler. Bu durumda ip adresini bir ppp arayüzüne çevirmek ve sonra da belli bir ppp arayüzünden yönlendirme (ve güvenlik duvarı) yapmak daha elverişli olabilir. Bu yüzden /etc/ppp/ip-up dosyasını aşağıdaki gibi düzenledim;
# Bu değişkenler çalışan-kısımlar tarafından betiklerin çalıştırılması içindir
PPP_IFACE="$1"
PPP_TTY="$2"
PPP_SPEED="$3"
PPP_LOCAL="$4"
PPP_REMOTE="$5"
PPP_IPPARAM="$6"
export PPP_IFACE PPP_TTY PPP_SPEED PPP_LOCAL PPP_REMOTE PPP_IPPARAM
# ip'yi ppp'ye çevirme
echo $PPP_IFACE > "/var/run/ppp/if-$PPP_LOCAL"
sleep 1
# Güvenlik duvarını tekrar çalıştırma .
/usr/local/sbin/rc.block
# (Varsayılan) rotaya (ya da rotalara ) dikkat edilmesi
case $PPP_LOCAL in
"ip_adresim")
/sbin/route add -net 0.0.0.0 gw $PPP_REMOTE netmask 0.0.0.0
;;
esac
# Önyüklemede sabit şeyler atlandı
if ! ( netstat -an | grep 'ip_adresim:53' > /dev/null 2>&1 )
then
# Just booted
# Sync clock
/usr/local/sbin/ntpdate.sh &
# Set the null routes
/usr/local/sbin/null-route.sh &
# Bind 9 needs this;
sleep 1
/etc/init.d/bind9 restart
fi
# Bir sesli uyarı
/bin/echo -ne "\007" >> /dev/tty1
ip_adresim kısmını kendi IP adresinizle değiştirin. /usr/local/sbin/ntpdate.sh dosyası saati eşzamanlamak için kullanılır.
Bu dosya NTPD'yi durdurur, ntpdate kullanarak eşzamanlamayı yapar ve NTPD'yi yeniden başlatır. /usr/local/sbin/null-route.sh boş rotaları ayarlayan bir dosyadır;
#!/bin/bash
route add -net 10.0.0.0 netmask 255.0.0.0 reject
route add -net 172.16.0.0 netmask 255.240.0.0 reject
route add -net 192.168.0.0 netmask 255.255.0.0 reject
Eğer kullanımda RFC 1918 adreslerine sahipseniz, boş rotalar daha küçük bir ağ maskesi kullanmanıza izin vermeyeceklerdir. 192.168.1.0/24 ağı boş rota 192.168.0.0/16 tarafından rahatsız edilmeyecektir;
Kernel IP rota tespit etme tablosu
Hedef Ağ Geçidi Bilgi Maskesi Bayrak Metrik Ref Use Iface
255.255.255.255 0.0.0.0 255.255.255.255 UH 0 0 0 eth1
195.190.249.4 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
192.168.0.0 - 255.255.0.0 ! 0 - 0 -
172.16.0.0 - 255.240.0.0 ! 0 - 0 -
10.0.0.0 - 255.0.0.0 ! 0 - 0 -
0.0.0.0 195.190.249.4 0.0.0.0 UG 0 0 0 ppp0