在全新安装 Debian Jessie 后,我设置了静态 IP 地址后,DHCP 客户端仍然处于活动状态。续租时,它甚至会恢复为 dhcp IP 地址。
第 1 步:我修改 /etc/network/interfaces:
source /etc/network/interfaces.d/*
auto lo
iface lo inet loopback
auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.0.8
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.0.5
第 2 步:我重新启动网络systemctl restart networking.service
(没有错误消息)
第 3 步:检查 dhclient 是否正在运行:ps x | grep [d]hclient
-->dhclient -v -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases eth0
如果我重新启动,dhclient 仍然会启动。
我在使用静态 IP 地址安装的每个 Debian Jessie 上都有这种行为。
我没有发现 dhclient 是否已启动:find
并grep
没有发现任何内容/etc
,而且/usr/lib
我不习惯 systemd,而且我不明白 dhclient 是否由 systemd 启动。
正在运行的进程是(我删除了我的 Bash 会话):
/sbin/init
/lib/systemd/systemd-udevd
/lib/systemd/systemd-journald
/usr/sbin/cron -f
/usr/sbin/atd -f
/lib/systemd/systemd-logind
/usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation
/usr/sbin/rsyslogd -n
/usr/sbin/acpid
/bin/login --
/usr/sbin/exim4 -bd -q30m
dhclient -v -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases eth0
/usr/sbin/sshd -D
/usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 108:113
问题1:dhclient是如何启动的?
问题2:阻止它运行的“官方”方式是什么?(除了apt-get remove/purge
)
简单解释:
由于停止时接口未设置为“dhcp”,因此 dhclient 并未停止。
正确的方法是:
或者手动处理 dhclient。并且它肯定不会在重新启动后启动。
dhcp 客户端无法检测到有人配置了另一个 IP 地址。所以当你设置一个静态地址时,你必须杀死它。
唯一的谜团是:为什么当我重新启动测试服务器时,dhcp 客户端仍然存在?
我只是在另一台服务器上再次进行了测试,没有问题。所以我想这只是我。我错过或忘记了什么。