使用 ubuntu 22.04,我尝试将两个 IP 地址192.168.200.100
和分配169.254.1.0
给以太网设备enx00e04c680202
。根据本教程和这个答案,/etc/netplan/01-network-config_home.yaml
我创建了一个包含以下内容的文件:
network:
version: 2
renderer: NetworkManager
ethernets:
enx00e04c680202:
addresses:
- 192.168.200.100/24
- 169.254.1.100/24
routes:
- to: default
via: 192.168.200.220
nameservers:
addresses:
- 8.8.8.8 # Add your DNS server IP address
- 8.8.4.4 # Add another DNS server IP address
并使用命令应用更改
sudo netplan apply
我用命令检查了配置ip address show dev enx00e04c680202
,但似乎只应用了一个地址:
3: enx00e04c680202: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:e0:4c:68:02:02 brd ff:ff:ff:ff:ff:ff
inet 192.168.200.100/24 brd 192.168.200.255 scope global noprefixroute enx00e04c680202
valid_lft forever preferred_lft forever
但其他配置的地址似乎有效!即使它没有随命令显示
ip address show dev enx00e04c680202
我能够连接到 IP 地址为 169.254.1.0 的设备,该设备仅连接到该以太网适配器。
enx00e04c680202
当我使用以下命令向该适配器添加 IP 地址时
sudo ip addr add 169.254.1.100/24 dev enx00e04c680202
然后我看到命令的以下输出ip address show dev enx00e04c680202
:
3: enx00e04c680202: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:e0:4c:68:02:02 brd ff:ff:ff:ff:ff:ff
inet 192.168.200.100/24 brd 192.168.200.255 scope global noprefixroute enx00e04c680202
valid_lft forever preferred_lft forever
inet 169.254.1.100/24 scope global enx00e04c680202
valid_lft forever preferred_lft forever
它显示两个 IP 地址,而不仅仅是一个。也许这是一个错误ip address show
?
您正在尝试静态分配地址
169.254.1.100/24
。地址169.254.0.0/16
空间是为 IPv4 自动配置保留的。NetworkManager 似乎拒绝允许您静态分配此范围内的 IP 地址。您可以通过指令启用此范围内的地址link-local
,例如:有关 的说明,请参阅https://netplan.readthedocs.io/en/stable/netplan-yaml/#properties-for-all-device-types
link-local
。