Skip to main content

2.3 网络设置

为保障服务器环境的稳定性与可管理性,建议将网络接口配置为静态IP地址,避免因DHCP租约变更或服务中断导致的连接不可达问题。


[1] 静态IP配置(基于Netplan)

Ubuntu 24.04 LTS 默认使用 Netplan 作为网络配置后端。操作前请注意:

- 接口名称(如示例中的 `enp1s0`)因硬件及固件差异而异,请通过 `ip link show` 或 `ls /sys/class/net/` 命令确认实际接口名;

- 原始云初始化配置文件 `/etc/netplan/50-cloud-init.yaml` 将被重命名备份,以防止后续云平台注入覆盖自定义配置。


执行以下步骤完成配置:

```bash

# 备份默认配置

root@localhost:~# mv /etc/netplan/50-cloud-init.yaml /etc/netplan/50-cloud-init.yaml.org


# 创建新配置文件

root@localhost:~# vi /etc/netplan/01-netcfg.yaml

```

在编辑器中写入以下YAML格式配置(请根据实际网络拓扑替换占位值):

```yaml

network:

version: 2

ethernets:

enp1s0: # ← 替换为实际接口名

dhcp4: false

addresses: [10.0.0.30/24] # ← 静态IPv4地址及子网前缀长度

routes:

- to: default

via: 10.0.0.1 # ← 默认网关地址

metric: 100 # ← 多网卡环境下路由优先级(值越小优先级越高)

nameservers:

addresses: [10.0.0.10, 10.0.0.11] # ← DNS服务器地址列表

search: [srv.world, server.education] # ← DNS搜索域

dhcp6: false

```


应用配置并验证:

```bash

# 设置配置文件权限(仅root可读写,符合安全基线要求)

root@localhost:~# chmod 600 /etc/netplan/01-netcfg.yaml


# 应用网络配置

root@localhost:~# netplan apply


# 验证接口状态与地址分配

root@localhost:~# ip address show enp1s0

```

预期输出应包含已配置的IPv4地址(如 `inet 10.0.0.30/24`),且无DHCP获取的临时地址残留。


[2] IPv6禁用(可选)

若生产环境明确无需IPv6支持,可通过内核参数全局禁用以减少攻击面并简化排错:

```bash

# 持久化禁用IPv6(写入sysctl配置)

root@localhost:~# echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf

root@localhost:~# sysctl -p


# 验证禁用效果(执行后输出中不应出现 inet6 行)

root@localhost:~# ip -4 address show enp1s0