在 /etc/network/interfaces 中使用 iproute2

在 /etc/network/interfaces 中使用 iproute2

当您为 添加静态路由 时/etc/network/interfaces,如何使用 iproute2 命令代替 net-tools 命令?例如,我添加了以下行:

post-up ip route add 10.0.0.0/8 dev eth0

到我的interfaces文件并重新启动,但没有在新的路由表中看到效果。

我的语法有误吗?还是我被迫在 14.04-LTS 中使用 net-tools?我知道/etc/rc.local这是一个解决方案,但我宁愿将网络内容放在一个地方。

答案1

使用pre-up(接口启动前)、up(接口启动后)、down(接口关闭前) 或post-down(接口关闭后) 后跟要运行的命令。对于您的情况,您可能希望使用updown

这是我用来为内部网络分配 IPv6 地址的块:

iface eth0 inet static
        address 192.168.0.1
        netmask 255.255.255.0
        broadcast 192.168.0.255
        up ip -6 addr add 2001:DB8::/64 dev eth0
        down ip -6 addr del 2001:DB8::/64 dev eth0

答案2

我认为在那行之前应该iface eth0 inet <static|manual|dhcp> post-up只在界面启动后运行该命令,这样做不需要重新启动,只需ifup eth0

为了更好地了解问题,请发布您的interfaces文件。

答案3

这是一份关于 Linux 路由的完整 PDF。包括 IPv6。“iproute2”是未来的网络配置工具。http://www.ime.usp.br/~rbrito/docs/lartc.dbk.psom.pdf

[更新] 我认为只有脚本可以做到这一点。 试试这个。http://www.policyrouting.org/iproute2.doc.html#ss9.11

相关内容