Debian one 接口有两个 IP 地址

Debian one 接口有两个 IP 地址

我刚刚安装了新的 debian 10.4.0-amd64-standard。

我将网络接口 ip 配置为静态 (eth0):

iface eth0 inet static
address 10.1.1.41/24
gateway 10.1.1.1
dns-nameservers 10.1.1.20

但是当我输入时,ip addr我在同一接口上得到两个 IP 地址。

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:15:5d:01:0a:09 brd ff:ff:ff:ff:ff:ff
    inet 10.1.1.103/24 brd 10.1.1.255 scope global dynamic eth0
       valid_lft 549236sec preferred_lft 549236sec
    inet 10.1.1.41/24 brd 10.1.1.255 scope global secondary eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::215:5dff:fe01:a09/64 scope link
       valid_lft forever preferred_lft forever

我需要做什么才能摆脱 DHCP IP“10.1.1.103”?

根据要求输出ps aux | grep dhcp

root        381  0.0  0.2   9488  5736 ?        Ss   Aug12   0:00 /sbin/dhclient -4 -v -i -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases -I -df /var/lib/dhcp/dhclient6.eth0.leases eth0
root      12551  0.0  0.0   6076   828 pts/0    S+   07:43   0:00 grep dhcp

禁用 dhcp 服务后。当我输入ifup eth0

sudo ifup eth0
Internet Systems Consortium DHCP Client 4.4.1
Copyright 2004-2018 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/eth0/00:15:5d:01:0a:09
Sending on   LPF/eth0/00:15:5d:01:0a:09
Sending on   Socket/fallback
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 3
DHCPOFFER of 10.1.1.103 from 10.1.1.20
DHCPREQUEST for 10.1.1.103 on eth0 to 255.255.255.255 port 67
DHCPACK of 10.1.1.103 from 10.1.1.20
bound to 10.1.1.103 -- renewal in 1523 seconds.

看起来它仍在请求 dhcp 获取 ip。

答案1

我刚刚在 5 台 Mac Mini 上全新安装 Debian 11 时也遇到了这个问题,并想分享我的发现。深入研究后/var/log/syslog,我注意到它connmand正在启动我的以太网并请求 DHCP。大约 5 秒后,又dhclient做了同样的事情。

这导致我的机器被分配了两个 IP 地址。我删除了connman软件包,重新启动,一切都很顺利,现在只提取了一个 DHCP 请求。

答案2

最有可能的是,您的网络管理器仍在运行:额外的你的ip地址以太网0接口获取只能来自 DHCP 请求(也可以通过存在dhclient在输出中辅助键)。

禁用它即可,

sudo systemctl disable network-manager

并重新启动以检查现在您确实获得了一个 IP 地址。

答案3

最近遇到同样的问题:

systemd您可以这样解决:

您不需要添加/修改文件/etc/network/interfaces来设置IP

mv /etc/systemd/network/99-dhcp.network   /etc/systemd/network/99-static.network

编辑重命名的文件:

内部替换[network]部分从DHCP到:

[NETWORK]

Address=xxx.xxx.xxx.xxx/yy

Gateway=xxx.xxx.xxx.xxx

DNS=xxx.xxx.xxx.xxx.xxx

(以防万一,请检查该[MATCH]部分是否有正确的表达式来匹配您的 iface 名称,例如Name=e*:)

然后重新启动

答案4

我刚刚找到了一个解决方案,并将分享一个关于我认为正在发生的事情的理论。

至少在我的系统上,该接口看起来是从 NetworkManager 分配的连接,/etc/网络/接口。我正在深入研究 NetworkManager 手册页和 NetworkManager.conf(5) 部分IFUPDOWN 部分,它说如果管理变量设置为错误的,“NetworkManager 将忽略 /etc/network/interfaces 中列出的任何接口。”

当我设置管理真的,两个连接中的第一个消失了(重新启动网络后),留下了我在其中定义的唯一定义的连接/etc/网络/接口

我犹豫是否要进一步推测,因为我经常误解我认为的线索,但我无法控制自己。

我的目标是拥有一个静态 IP 地址,我在/etc/网络/接口,但是调用IP地址始终显示 DHCP 定义的地址。我安装了isc-dhcp-客户端并不断尝试获取静态地址,直到我注意到(谁知道多久)列出了多个 IP 地址,其中一个是我在/etc/网络/接口。这与 NetworkManager.conf(5) 相矛盾,后者表示如果管理被设定为错误的。也许安装 DHCP 客户端会覆盖 NetworkManager。

相关内容