Debian
在 Debian 上設置持久路由表
我通過刪除一條規則修改了路由表,並為我的第二個介面 eth1 添加了兩條新規則:
route del -net 10.1.2.0 netmask 255.255.255.0 route add -host 10.1.2.51 eth1 route add -host 10.1.2.52 eth1
我希望規則能夠在重啟後繼續存在。我可以編寫一個簡單的rc腳本來刪除1條規則並插入2條新規則,但我想知道是否有辦法配置ifconfig,而不是在啟動時為介面(eth1)添加路由規則,甚至更好,指定應添加哪些規則。
什麼是乾淨的方法呢?是否
ifconfig
允許我為路由指定自定義規則?
當介面出現時,您可以將呼叫添加到
post-up
鉤子。介面配置位於/etc/network/interfaces
. 這裡有一個例子:auto eth1 iface eth1 inet dhcp post-up route del -net 10.1.2.0 netmask 255.255.255.0 post-up route add -host 10.1.2.51 eth1 post-up route add -host 10.1.2.52 eth1 pre-down route add -net 10.1.2.0 netmask 255.255.255.0 pre-down route add -host 10.1.2.51 eth1 pre-down route add -host 10.1.2.52 eth1
從手冊頁 - 介面:
post-up
command
啟動界面後執行命令。如果此命令失敗,則 ifup 中止,避免將介面標記為已配置(即使它確實已配置),列印錯誤消息,並以狀態 0 退出。
pre-down
command
在關閉介面之前執行命令。如果此命令失敗,則 ifdown 中止,將介面標記為已取消配置(即使尚未真正取消配置),並以狀態 0 退出。
此外,在 Linux 上,“net-tools”
route
已被棄用,應由iproute2包中的工具替換。進一步閱讀: