Ubuntu 网络配置与诊断完整指南
本文提供了 Ubuntu 系统下网络配置和诊断的完整指南,涵盖从基础配置到高级诊断的所有方面。
1. Ubuntu 网络配置
1.1 Netplan 配置(Ubuntu 17.10+)
在开始之前,请预先执行:ls /etc/netplan 查看里面有什么文件,不一定就是50-cloud-init.yaml
动态 DHCP 配置
# /etc/netplan/50-cloud-init.yaml
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: true
静态 IP 配置(192.168.1.100)
# /etc/netplan/50-cloud-init.yaml
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
addresses: [192.168.1.100/24]
routes:
- to: default
via: 192.168.1.1
nameservers:
addresses: [8.8.8.8, 114.114.114.114]
静态 IP 配置(192.168.1.100)双网卡负载均衡
# /etc/netplan/50-cloud-init.yaml
network:
version: 2
renderer: networkd # 使用 systemd-networkd(默认)
bonds:
bond0: # 绑定接口名称
interfaces: [enp9s0, enp10s0] # 参与绑定的网卡
addresses: [192.168.1.100/24] # 静态IP和子网掩码
routes:
- to: 0.0.0.0/0 # 默认路由(等效于gateway4)
via: 192.168.1.1 # 网关地址
nameservers:
addresses: [8.8.8.8, 114.114.114.114] # DNS服务器
parameters:
mode: balance-rr # 轮询模式(负载均衡)
mii-monitor-interval: 100 # 链路检测间隔(毫秒)
ethernets:
enp9s0: {} # 保留原始配置,但不单独启用
enp10s0: {} # 保留原始配置,但不单独启用
wlp11s0:
dhcp4: true # 无线网卡保持独立
wifis: {}

使配置生效:
sudo netplan apply
1.2 ifupdown 配置(Ubuntu 16.04 及之前版本)
动态 DHCP 配置
# /etc/network/interfaces auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp
静态 IP 配置
# /etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 114.114.114.114
使配置生效:
sudo systemctl restart networking
2. Ubuntu 网络诊断命令
2.1 基础网络信息查询
| 命令 | 功能描述 | 示例用法 |
|---|---|---|
ifconfig |
查看网络接口基本信息(IP、子网掩码、MAC等) | ifconfig 或 ifconfig eth0 |
ip addr |
查看网络接口的详细信息 | ip addr 或 ip addr show eth0 |
ip route |
查看路由表信息 | ip route show |
nmcli |
NetworkManager 命令行管理工具 | nmcli device status |

2.2 网络连接状态监控
| 命令 | 功能描述 | 示例用法 |
|---|---|---|
netstat |
显示网络连接、路由表和接口统计信息 | netstat -tuln(查看监听端口)netstat -rn(查看路由表)netstat -tunap(查看所有连接及进程) |
ss |
比 netstat 更快速高效的套接字统计工具 | ss -tuln(查看监听端口)ss -t(查看所有 TCP 连接) |
lsof |
列出打开的文件和使用这些文件的进程 | sudo lsof -i -P -n | grep LISTEN |
2.3 网络连通性测试
| 命令 | 功能描述 | 示例用法 |
|---|---|---|
ping |
测试与目标主机的连通性 | ping google.comping 192.168.1.1 |
traceroute |
跟踪数据包路径 | traceroute google.com |
mtr |
结合 ping 和 traceroute 功能的增强工具 | mtr google.com |
nmap |
网络发现和安全扫描工具 | nmap -sP 192.168.1.0/24(扫描局域网主机) |
2.4 高级网络诊断工具
| 命令 | 功能描述 | 示例用法 |
|---|---|---|
tcpdump |
网络数据包捕获和分析 | sudo tcpdump -i eth0sudo tcpdump -i any |
iftop |
实时监控网络流量 | sudo iftop |
iptables |
查看和管理防火墙规则 | iptables -L |
iwconfig |
查看无线网络接口信息 | iwconfig wlan0 |
2.5 网络日志分析
# 查看 NetworkManager 日志 journalctl -u NetworkManager # 查看系统日志中的网络相关条目 cat /var/log/syslog | grep -i network # 查看内核消息 dmesg | grep -i network
3. 其他 Linux 发行版通用设置
3.1 CentOS/RHEL/Fedora
网络配置文件通常位于 /etc/sysconfig/network-scripts/ifcfg-eth0:
DEVICE=eth0 BOOTPROTO=static IPADDR=192.168.1.100 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=8.8.8.8 ONBOOT=yes
3.2 通用底层工具
- 临时配置:
ip address add 192.168.1.100/24 dev eth0 - 路由设置:
ip route add default via 192.168.1.1 - DNS 配置:编辑
/etc/resolv.conf
4. 核心网络参数说明
| 参数 | 作用 | 示例值 |
|---|---|---|
dhcp4 |
是否通过 DHCP 自动获取 IP | true 或 false |
addresses |
静态 IP 地址及子网掩码 | [192.168.1.100/24] |
routes |
路由规则(新版本替代 gateway4) | - to: default via: 192.168.1.1 |
nameservers |
DNS 服务器地址 | [8.8.8.8, 114.114.114.114] |
gateway4 |
默认网关(已弃用) | 192.168.1.1 |
5. 注意事项
- 权限要求:多数诊断命令需要 root 权限,使用
sudo前缀 - 配置生效:Netplan 配置需执行
sudo netplan apply,ifupdown 配置需重启网络服务 - 远程连接风险:修改网络配置可能导致 SSH 连接中断,请谨慎操作
- 工具安装:部分命令可能需要安装额外软件包,如
nmap、tcpdump、iftop等
通过本指南,你可以全面掌握 Ubuntu 系统的网络配置和故障诊断方法,无论是简单的网络连接问题还是复杂的网络配置,都能找到相应的解决方案。

评论(0)
暂无评论