Ubuntu 修改静态IP确定本机网卡
$ ifconfig# 我们要找的网卡信息eno1: flags=4163 mtu 1500 inet 10.10.33.158 netmask 255.255.255.0 broadcast 10.10.33.255 inet6 fe80::f977:78ee:d426:44f0 prefixlen 64 scopeid 0x20 ether 6c:2b:59:fa:d5:59 txqueuelen 1000 (Ethernet) RX packets 11954820 bytes 9213482467 (9.2 GB) RX errors 0 dropped 485752 overruns 0 frame 0 TX packets 6430777 bytes 1052165750 (1.0 GB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 device interrupt 16 memory 0x92f00000-92f20000# 本地回环地址,无关lo: flags=73 mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10 loop txqueuelen 1000 (Local Loopback) RX packets 144525448 bytes 104065670824 (104.0 GB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 144525448 bytes 104065670824 (104.0 GB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
如上输出, eno1
是网卡名称,会用于稍后的ip配置
如果有多个网卡输出请排除 docker /虚拟环境等网卡,找到最正常的ip地址所属的网卡(如上 inet 10.10.33.158,或者类似198.162.x.x)
修改网卡配置
# 备份原网卡配置文件$ sudo cp /etc/netplan/01-network-manager-all.yaml /etc/netplan/01-network-manager-all.yaml.bak# 修改文件sudo vim /etc/netplan/01-network-manager-all.yaml
清空文件后,将以下内容写入到 /etc/netplan/01-network-manager-all.yaml 中、
# 以下内容写入network: version: 2 renderer: networkd ethernets: enp0s31f6: dhcp4: yes addresses: - 10.10.33.xx/24 gateway4: 10.10.33.xxx nameservers: addresses: [8.8.8.8]
其中 address 下的10.10.33.xx
应改为你所希望固定的静态ip
gateway4 中的 10.10.33.xxx
应改为正确的网关,末尾会讲解如何查看网关
写入完毕后,保存并退出/etc/netplan/01-network-manager-all.yaml,应用更改
# 退出vim :wq!#应用配置$ sudo netplan apply
sudo netplan apply
成功后,再次键入 ifconfig
即可验证固定ip是否更改成功
查看网关
$ ip rdefault via 10.10.33.1 dev enp0s31f6 proto static default via 10.10.33.254 dev enp0s31f6 proto static default via 10.10.33.254 dev enp0s31f6 proto dhcp src 10.10.33.156 metric 100 10.10.33.0/24 dev enp0s31f6 proto kernel scope link src 10.10.33.39
可以看到有2个 default 的网关 10.10.33.1
和 10.10.33.254
,那么该如何判断哪一个网关是正确的呢?
最简单的方法是分别将这两个网关写入到 /etc/netplan/01-network-manager-all.yaml 进行尝试。