使用ip addr代替ifconfig在Debian上报告“ RTNETLINK答案:文件存在”


53

我有一个Debian系统,与eth0和一起用作无线路由器wlan0。现在,我就手动添加一个额外的网络eth1ifconfig

alix:〜#ifconfig eth1 192.168.0.2网络掩码255.255.255.0
alix:〜#netstat -rn
内核IP路由表
目标网关Genmask标志MSS窗口irtt Iface
0.0.0.0 192.168.2.1 0.0.0.0 UG 0 0 0 eth0
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.3.0 0.0.0.0 255.255.255.0 U 0 0 0 wlan0
阿里克斯:〜#ping 192.168.0.254
PING 192.168.0.254(192.168.0.254)56(84)个字节的数据。
来自192.168.0.254的64个字节:icmp_req = 1 ttl = 64时间= 0.537 ms
来自192.168.0.254的64个字节:icmp_req = 2 ttl = 64时间= 0.199 ms
来自192.168.0.254的64个字节:icmp_req = 3 ttl = 64时间= 0.188 ms
^ C
-192.168.0.254 ping统计信息-
传输3个数据包,接收3个数据包,0%数据包丢失,时间2005ms
rtt最小值/平均值/最大值/ mdev = 0.188 / 0.308 / 0.537 / 0.161 ms

一切正常,如您所见。

现在,我想使配置永久化。为此,我将以下部分添加到/etc/network/interfaces

alix:〜#sed -n'/ iface eth1 /,/ ^ $ / p'/ etc / network / interfaces
iface eth1 inet静态
  地址192.168.0.2
  网络掩码255.255.255.0

但是,当我尝试启动网络时,出现以下错误:

alix:〜#ifconfig eth1向下
alix:〜#ifup -v eth1
配置接口eth1 = eth1(inet)
运行部分--verbose /etc/network/if-pre-up.d
运行部分:执行/etc/network/if-pre-up.d/hostapd
ip addr添加192.168.0.2/255.255.255.0广播192.168.0.255 dev eth1标签eth1
RTNETLINK答案:文件存在
无法启动eth1。

当我ip手动运行命令时,出现相同的错误:

alix:〜#ip addr添加192.168.0.2/255.255.255.0广播192.168.0.255 dev eth1标签eth1
RTNETLINK答案:文件存在

命令有什么问题?我该如何告诉Debian做正确的事?

Answers:


83

对不起,但我自己明白了。在启动设备之前,我必须冲洗设备:

alix:〜#ip addr flush dev eth1

Ubuntu Server指南》中提到了清除此类手动设置的接口配置信息。


我仍然收到(略有不同)错误,RTNETLINK answers: No such process Failed to bring up eth1但现在我的Eth1已正确分配并且是UP / UP。
harperville 2015年

是的,这里有同样的问题: RTNETLINK answers: No such process Failed to bring up eth1
Drew

7
即使您的答案解决了问题。如果您能说出它的实际作用,那就太好了。这个RTNETLINK文件存在什么?
humanityANDpeace

@ceving:请您解释一下是RTNETLINK answers file什么?另外,刷新后,我的网卡没有自动获取新的IP,请问dhcp一个新的IP?
realtebo

@realtebo @humanityANDpeace检查有关netlinkrtnetlink的内核手册。但是我怀疑你真的想知道。这是该ip工具从内核获取的错误消息。而不是将消息转换为对最终用户有用的消息,而是将消息ip传递通过。但是,如果您真的想了解内部结构,请使用Ask Question代替Add Comment按钮。
ceving

-1

我有一个类似的问题,当时我玩了10,000块钱的场景就是这样,并且我一直试图将缺少的东西添加到/ e / n / id / etho

但是在研究有关接口的手册页时,我注意到所有示例集只有两行真实数据,即ipv4 address / 24和一条指定路由器地址的网关行。因此,我将eth0文件剥离到该文件,然后重新启动,并且运行良好。

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.