当我启动运行 Raspbian 9 的 Raspberry PI 并连接到以太网时,拔下设备时 eth0 不会被视为断开连接。
因此,如果我在启动后执行 ifconfig(使用有线连接),eth0 就会有一个 IP。但是当我拔下以太网电缆时,eth0 接口仍然有一个 IP 地址...
但是:当启动时没有连接以太网电缆时不会发生这种情况。如果我将其有线连接,它会获得一个 IP,如果我将其拔出,eth0 会失去其 IP - 这正是我想要的。
我的所有接口都没有静态 IP,我只将 eth0 的度量设置为 100,将 wlan0 的度量设置为 200。
那么,如何才能让 eth0 在以太网电缆断开时始终丢失其 IP 地址?
答案1
使用‘ifupdown’包,这应该可以实现您想要的效果。
sudo apt install ifupdown
sudo vim /etc/ifplugd/action.d/ifupdown
然后修改‘ifupdown’脚本。
#!/bin/sh
set -e
case $2 in
up)
if [ $1 = eth0 ] ; then
/sbin/dhclient -1 eth0
fi
;;
down)
if [ $1 = eth0 ] ; then
/sbin/dhclient -r eth0
fi
;;
esac