前言
本文主要介绍命令行固定静态 IP 的方法,GUI 不在讨论范围内。
概念科普
NetPlan
在 Netplan 出现之前,不同的 Linux 发行版使用不同的网络配置方法,例如:
- Debian/Ubuntu(旧版):
/etc/network/interfaces文件 - Red Hat/CentOS:
/etc/sysconfig/network-scripts/目录下的文件 - Arch Linux: 各种自定义脚本或工具
- Systemd 系列:
systemd-networkd的.network文件
这种混乱的局面使得为不同的发行版维护网络配置变得复杂,尤其是在云环境和服务器农场中。
Netplan 的目标是统一和简化这个过程,它提供了一个统一的配置接口:无论底层用的是 systemd-networkd 还是 NetworkManager,你都可以用同一种语法(YAML)来配置网络。
教学
确定网口名
获取网口:
ip link show
输出类似如下内容:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens18: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether bc:24:11:40:1d:ed brd ff:ff:ff:ff:ff:ff
altname enp0s18
可以看到网卡名称是 ens18。
修改 Netplan 配置文件
移动到 Netplan 目录:
cd /etc/netplan
列出所有文件:
ls
本文输出如下内容:
50-cloud-init.yaml
那么就编辑 50-cloud-init.yaml 这个文件:
sudo nano 50-cloud-init.yaml
# 也可以换成 vim 或者其它你顺手的编辑工具,或是 SFTP
修改示例:
network:
renderer: networkd
ethernets:
ens18: # 替换为你的网络接口名称
dhcp4: false # 关闭 DHCP
dhcp6: false # 关闭 DHCP
addresses: [192.168.10.200/24] # 静态 IP 地址和子网掩码
routes:
- to: default
via: 192.168.10.1 # 网关地址,大部分情况下是你的路由器地址
nameservers:
addresses: [192.168.10.1] # DNS 服务器地址,可以是你的网关地址
search: []
version: 2
保存文件后,执行 reboot 重启机器或是执行 sudo netplan apply 应用网络设置。再使用 ifconfig 就可以查看 IP 是否已经被应用了。
版权申明
- 本文作者:光昭
- 本文链接:https://www.pyrzo.com/posts/ubuntu-server-24-04-set-static-ip
- 封面出处:#東方 東方花映塚20周年 - 黄瓜的插画 - pixiv
- 版权声明:所有文章除特别声明外均系本人自主创作,转载及引用请联系作者,并注明出处(作者、原文链接等)。
- 部分图片搜集于网络,若构成侵权请联系我,会尽快删除图片。
Comments NOTHING