为什么同一台计算机有 2 个 IP 地址?

为什么同一台计算机有 2 个 IP 地址?

我有个问题。我的一台电脑上安装了 32 位 Ubuntu Server 12.04 LTS。我为这台电脑设置了一个静态 IP 地址,但现在当我查看哪些设备在使用我的互联网时,我注意到我的 Linux 服务器有 2 个不同的 IP 地址,并且都具有相同的 MAC 地址。我仍然可以毫无问题地通过 ssh 进入它,但看到同一台服务器有两个不同的 IP 地址让我有点恼火。有什么方法可以摆脱我设置的静态 IP 地址以外的其他 IP 地址吗?我不知道这是否重要,但我有一台 Netgear WNDR 3700 v3。任何帮助都将不胜感激。谢谢 :)

配置

# This file describes the network interfaces available on your system  
# and how to activate them. For more information, see interfaces(5).    
# The loopback network interface  
auto lo 
iface lo inet loopback 
iface eth0 inet static
   address 192.168.1.91
   netmask 255.255.255.0
   broadcast  192.168.1.255
   gateway 192.168.1.1 

# The primary network interface  
auto eth0 
iface eth0 inet dhcp

我的 /etc/resolv.conf

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 192.168.1.1 

答案1

根据interfaces您注释中的文件判断,您可能没有注释掉auto eth0iface eth0 inet dhcp行。如果是这种情况(无法从格式中确定),您的机器首先为该接口设置静态 IP,然后从路由器获取第二个地址并将其分配给同一接口。这是一个合法且可行的设置,不会造成大量问题。但是,修复它只需注释掉最后两行即可。

答案2

问题:在家庭 WIFI 上通过 /etc/netplan/99_config.yaml 配置静态 ip 地址时,遇到了同样的问题,即 eth0 中有一个辅助 ip 地址。

观察:ip address cmd 显示 eth0 的主 ip 地址和辅助 ip 地址,ifconfig cmd 仅显示 eth0 上的 1 个 ip 地址

修复:在 /etc/netplan/99_config.yaml 中禁用 dhcp -> dhcp4: false

network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: false
      addresses:
        - 192.168.170.4/20
      routes:
        - to: default
          via: 192.168.160.1
      nameservers:
          search: [mshome.net]
          addresses: [127.0.0.53, 8.8.8.8]

答案3

据我所知,auto eth0这只是告诉系统在系统启动时自动启动接口。iface eth0 inet dhcp但这肯定会导致它获得一个 DHCP 地址以与上面定义的静态 IP 一起使用。

相关内容