我第一次安装 Ubuntu 服务器 22.04,对 Linux 还是个新手。每次我重新启动服务器时,我都必须运行命令sudo ifconfig enp6s0f1 up
来启动并运行该接口。(我在阅读论坛后了解到我应该开始使用 ip 命令)我已经编辑了我的 netplan .yaml 文件并将其包含在内。我有一个主界面,它没有这个问题,还有一部绑定到服务器的手机,我也没有这个问题。我读了好多资料,但似乎仍然找不到我的问题的解决方案。非常感谢您的任何建议,感谢您的时间。
network:
version: 2
renderer: networkd
ethernets:
enp0s25:
dhcp4: true
enp6s0fl:
dhcp4: false
usb0:
dhcp4: false
答案1
您的文件似乎.yaml
有一些错误。
首先,如果您希望您的接口获取 IP 地址,dhcp4
则应将其设置为 true。
另外,你的界面名称写错了——你把 写成了enp6s0fl
,而它应该是enp6s0f1
。(也许你应该尝试另一种字体,这样你就可以清楚地与 区分开l
来1
)
尝试这个修复的.yaml
文件:
network:
version: 2
renderer: networkd
ethernets:
enp0s25:
dhcp4: true
enp6s0f1:
dhcp4: true
usb0:
dhcp4: false
答案2
可能吧,我觉得每次开机ip值都会变,使用redhat的时候把BOOTPROTO选项设置为dhcp就会出现这个问题。
我推荐的方式是设置一个静态IP并使用它。
network:
version: 2
renderer: networkd
ethernets:
enp0s25:
dhcp4: true
enp6s0f1:
dhcp4: false
addresses: [x.x.x.x/24] # Insert IP address of machine
routes:
- to: default
via: y.y.y.y # Insert IP address of gateway
nameservers:
addresses: [z.z.z.z] # Insert IP address of DNS server
usb0:
dhcp4: false
答案3
您可以尝试以下操作:
创建 systemd 单元文件:
sudo nano /etc/systemd/system/manual-iface.service
然后在文件中添加以下行并使用 Ctrl+o 保存并使用 Ctrl+x 退出:
[Unit]
Description=Service to bring up/down unconfigured nic enp6s0f1
After=network.target
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/sbin/ip link set enp6s0f1 up
ExecStop=/sbin/ip link set enp6s0f1 down
[Install]
WantedBy=multi-user.target
然后在启动时启用该服务:
sudo systemctl enable manual-iface.service