如何对路由表进行更改持久化?


9

我正在运行raspbian,可以通过ethO访问局域网中的任何内容,但无法ping通Internet地址。route -n表示以下内容:

内核IP路由表

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

然后我运行sudo / sbin / route add -net 0.0.0.0 gw 1​​92.168.1.1 eth0跟着route -n然后得到

内核IP路由表

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

一切正常。因此,如何使它永久化,这样我每次启动PI时都不必运行route命令?


请粘贴/ etc / network / interfaces文件的内容。
gurcanozturk

1
如何在dhcpcd.conf文件中执行此操作

1
@winnie,您应该输入sudo nano /etc/dhcpcd.conf,然后输入:eth0接口,静态ip_address =“地址”,静态路由器=“路由器地址”,静态domain_name_servers =“ DNS地址”。将这4条线放在另一条线的下方,并跳过逗号。用您的实数替换引号之间的文本
VMMF

Answers:


4

在Raspbian / Jessie中,添加到/ etc / network / interfaces对我不起作用。我正在向VPN子网添加第二条路由,因此已经使用VMMF的方法添加了默认路由。但是添加

ip route add 192.168.[othersubnet].0/24 via 192.168.1.1

到在以下位置创建的新文件

/lib/dhcpcd/dhcpcd-hooks/40-vpnroute

挂接到/etc/dhcpcd.conf并永久添加路由。

参考:https : //wiki.archlinux.org/index.php/dhcpcd#DHCP_static_route.28s.29和thx VMMF作为注释中的指针。


真好 起初,我不喜欢将dhcpcd用于所有内容,但是我真的开始喜欢它。感谢您的花絮。
B先生

3

要使静态路由持久化,或者必须将路由条目添加到/ etc / network / interfaces

以以下格式添加静态路由:

ip route add [-net|-host] <host/net>/<mask> gw <host/IP> dev <Interface>

注意:这对于Raspbian Jessie不再有效,从2016年6月起,您应该改编/etc/dhcpcd.conf文件。


3
请注意,这不再对树莓派杰西有效,您应该改为编辑/etc/dhcpcd.conf文件(2016
VMMF

2

应该注意的是,该up条目应放在iface该条目的后面手册页中称为节)。因此,该文件的更完整示例/etc/network/interfaces如下所示

iface eth0 inet dhcp
   up route add -net 10.200.196.0 netmask 255.255.252.0 gw 10.200.205.225 metric 1

缩进显然不是必需的,但通常为了清楚起见而添加。


0

问题是,您有一个A类ip本地地址,很棒,您有一个ip地址,但是您有默认网关作为您的广播地址,您可能想通过使用以下方式在dhcpcd中进行更改

sudo nano /etc/dhcpcd.conf

然后输入下一部分

interface wlan0
static ip_address=192.168.x.xxx # the x's mean your own ip address
static routers=(your routers ip address)
static domain_name_servers=127.0.0.1

我建议您为您的dns使用localhost(127.0.0.1)(如果您有一个)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.