可是每次開機時因為同時有兩張網卡(有線+無線)所以就會得到兩個 『DefaultGateway』,有兩個『DefaultGateway』基本上就跟沒有『DefaultGateway』是一樣的,會無法連線,所以老是要手動刪掉『動物機群網段』的『DefaultGateway』,有點煩了所以寫隻簡單的Script讓他自動處理這個問題。
想法很簡單~~~~
1. 先檢查看看對接到『動物機群網段』的有線網卡『eth0』是不是『DefaultGateway』,如果是就刪掉。
2. 接著再檢查對接到『一般主機網段』的無線網卡是不是『DefaultGateway』,如果是,那就....... 沒事~~~,如果不是就加上這個『DefaultGateway』。
Scritp 如下,
#!/bin/bash # # DefaultGatewayCheck.sh # # 自動設定我要的 Default Gateway # Version:2.0 # 201109190237 # Max Lin max@mpsstudio.org # #!/bin/bash # Checketh0=`route -n | grep "UG"| grep "eth0"` Checkwlan0=`route -n | grep "UG"| grep "wlan0"` if [ "$Checketh0" ] ; then echo '28825252' | sudo -S route del default gw 10.128.0.1 fi if [ ! "$Checkwlan0" ] ; then echo '28825252' | sudo -S route add default gw 10.0.0.1 fi |
測試:
1.檢視現有 Routing Table max@minako:~$ route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0 169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0 10.0.0.0 0.0.0.0 255.128.0.0 U 2 0 0 wlan0 10.128.0.0 0.0.0.0 255.128.0.0 U 1 0 0 eth0 0.0.0.0 10.0.0.1 0.0.0.0 UG 0 0 0 wlan0 沒有『動物機群網段』的『DefaultGateway』 2.加上『動物機群網段』的『DefaultGateway』到 Routing Table max@minako:~$ sudo route add default gw 10.128.0.1 3.確認一下 max@minako:~$ route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0 169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0 10.0.0.0 0.0.0.0 255.128.0.0 U 2 0 0 wlan0 10.128.0.0 0.0.0.0 255.128.0.0 U 1 0 0 eth0 0.0.0.0 10.128.0.1 0.0.0.0 UG 0 0 0 eth0 0.0.0.0 10.0.0.1 0.0.0.0 UG 0 0 0 wlan0 『動物機群網段』的『DefaultGateway』在 Routing Table 中 4.執行 Script max@minako:~$ ./CheckGw.sh 5.看一下Routing Table max@minako:~$ route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0 169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0 10.0.0.0 0.0.0.0 255.128.0.0 U 2 0 0 wlan0 10.128.0.0 0.0.0.0 255.128.0.0 U 1 0 0 eth0 0.0.0.0 10.0.0.1 0.0.0.0 UG 0 0 0 wlan0 『動物機群網段』的『Default Gateway』沒了 6.刪掉『一般主機網段』的『Default Gateway』 max@minako:~$ sudo route del default gw 10.0.0.1 max@minako:~$ route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0 169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0 10.0.0.0 0.0.0.0 255.128.0.0 U 2 0 0 wlan0 10.128.0.0 0.0.0.0 255.128.0.0 U 1 0 0 eth0 一筆『Default Gateway』都沒有 7.再跑一下Script max@minako:~$ ./CheckGw.sh max@minako:~$ route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0 169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth0 10.0.0.0 0.0.0.0 255.128.0.0 U 2 0 0 wlan0 10.128.0.0 0.0.0.0 255.128.0.0 U 1 0 0 eth0 0.0.0.0 10.0.0.1 0.0.0.0 UG 0 0 0 wlan0 嗯.....有效 |