sudo ip addr add 192.168.1.200/24 dev eth0 label eth0:0
为 eth0 创建别名 eth0:0 并分配 IP。
启用/禁用接口
sudo ip link set eth0 upsudo ip link set eth0 down
启用或禁用 eth0 接口。
简洁格式输出
ip -br addr 或 ip -brief addr
简化输出,仅显示接口名、状态和地址。
过滤 IPv4 地址
ip -4 addr
仅显示 IPv4 地址。
过滤 IPv6 地址
ip -6 addr
仅显示 IPv6 地址。
设置广播地址
sudo ip addr add 192.168.1.100/24 brd + dev eth0
自动计算并设置广播地址(brd + 表示自动)。
显示统计信息
ip -s addr show eth0
显示 eth0 的收发包统计及错误信息。
显示永久地址
ip addr show permanent
仅显示永久有效的 IP 地址(非临时配置)。
子命令/选项
示例
说明
显示路由表
ip route showip route list
显示完整路由表(默认)
添加路由
sudo ip route add 10.0.0.0/24 via 192.168.1.1 dev eth0
添加静态路由到指定网络
删除路由
sudo ip route del 10.0.0.0/24
删除指定网络的路由
添加默认网关
sudo ip route add default via 192.168.1.1
设置默认路由(所有流量经此网关)
删除默认网关
sudo ip route del default
删除默认路由
添加特定主机路由
sudo ip route add 203.0.113.5/32 via 192.168.1.1
添加指向单个主机的路由
按接口显示路由
ip route show dev eth0
仅显示与 eth0 关联的路由
修改路由
sudo ip route change default via 192.168.2.1
修改默认网关为 192.168.2.1
刷新缓存路由
sudo ip route flush cache
清除路由缓存
显示路由表(简洁)
ip route show table main
显示主路由表(默认表)
指定路由表
sudo ip route add 10.0.0.0/24 via 192.168.1.1 table 100
将路由添加到自定义路由表(ID 100)
设置路由权重(metric)
sudo ip route add 192.168.2.0/24 via 192.168.1.1 metric 50
指定路由优先级(metric 值越小优先级越高)
### 管理接口与ip地址# 显示所有接口的 IP 地址ip addr show
# 为 eth0 添加 IPv4 地址sudoip addr add192.168.1.100/24 dev eth0
# 删除 eth0 的 IPv4 地址sudoip addr del 192.168.1.100/24 dev eth0
# 启用/禁用接口sudoiplinkset eth0 up
sudoiplinkset eth0 down
### 管理路由# 显示路由表ip route show
# 添加默认网关sudoip route add default via 192.168.1.1
# 添加静态路由sudoip route add10.0.0.0/24 via 192.168.1.2
# 删除路由sudoip route del 10.0.0.0/24
###管理邻居表# 显示 ARP 表ip neigh show
# 清除 eth0 的所有 ARP 缓存sudoip neigh flush dev eth0
### 统计信息# 显示 eth0 的详细统计信息ip-slink show eth0
# 显示所有接口的简要统计ip-slink
[root@localhost ~]# 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
[root@localhost ~]# ip l #查看所有接口状态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
[root@localhost ~]# ip link set ens256 down#关闭网卡[root@localhost ~]# ip link set ens256 up#开启网卡[root@localhost ~]# ip -s link show ens160 #查看接口统计信息2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
link/ether 00:0c:29:4d:c8:99 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped missed mcast
44857835810001213
TX: bytes packets errors dropped carrier collsns
272777829360000
altname enp3s0
[root@localhost ~]# ip addr show#查看所有接口的ip地址[root@localhost ~]# ip a#查看所有接口的ip地址
功能
传统命令
现代 ip 命令
显示接口信息
ifconfig
ip link show
设置 IP
ifconfig eth0
ip addr add
查看路由表
route -n
ip route show
添加路由
route add
ip route add
ARP 表查询
arp -n
ip neigh show
VLAN 配置
vconfig
ip link add type vlan
通过 ip 命令,可以实现几乎所有 Linux 网络配置操作,尤其适合自动化脚本和复杂网络环境。推荐优先使用 ip 而非传统命令。
route路由配置
route 是 Linux 中用于查看和操作路由表的传统命令(逐渐被 ip route 取代,但仍广泛使用)
基本语法
route [选项][操作][目标][参数]
常用选项及示例
选项/操作
用法示例
说明
查看路由表
route -n
显示数字格式的路由表(不解析主机名)
添加路由
sudo route add -net 10.0.0.0/24 gw 192.168.1.1
添加静态路由
删除路由
sudo route del -net 10.0.0.0/24
删除指定路由
添加默认网关
sudo route add default gw 192.168.1.1
设置默认网关
删除默认网关
sudo route del default gw 192.168.1.1
删除默认网关
指定网络接口
sudo route add -net 172.16.0.0/16 gw 192.168.1.1 dev eth0
#临时配置,非持久化[root@localhost ~]# ip addr add 192.168.25.203/24 dev ens37[root@localhost ~]# ip link set ens37 down && ip lin set ens37 up
rockey9配置静态ipv4
通过命令修改静态ip,持久化配置
#通过nmcli配置静态ip,根据具体网卡名称配置对应地址[root@localhost ~]# nmcli con modif "ens160" ipv4.addresses 192.168.25.207/24 ipv4.gateway 192.168.25.2 ipv4.dns 192.168.25.2 ipv4.method manual[root@localhost ~]# nmcli con down ens160 && nmcli con up ens160#重启网卡
通过修改配置文件配置静态ip
[root@localhost system-connections]# vim /etc/NetworkManager/system-connections/ens160.nmconnection #修改配置文件,需要根据网卡名称修改对应文件名称
[root@localhost net]# cat /etc/redhat-release#查看系统版本信息
Rocky Linux release 8.10(Green Obsidian)[root@localhost net]# dnf install -y NetworkManager-tui net-tools #安装必要工具
Repository extras is listed more than once in the configuration
使用传统network-scripts配置bond
配置bond0文件
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-bond0#配置文件
ss(Socket Statistics)是 Linux 系统下替代 netstat 的高效网络工具,用于查看 套接字连接状态、网络接口统计 和 路由信息。它直接读取内核数据,速度更快,功能更强大
选项
说明
-t
显示 TCP 连接
-u
显示 UDP 连接
-l
显示监听中的端口(LISTEN 状态)
-n
禁用域名解析(显示 IP 和端口号)
-a
显示所有连接(包括监听和非监听)
-p
显示进程信息(需要 root 权限)
-s
显示统计信息(汇总 TCP/UDP 状态)
-4
仅显示 IPv4 连接
-6
仅显示 IPv6 连接
-o
显示计时器信息(如连接保持时间)
-i
显示 TCP 内部信息(如拥塞控制算法)
# 查看所有 TCP 连接
ss -tna# 显示进程和用户信息sudo ss -tnap# 显示所有 ESTABLISHED 状态的 TCP 连接
ss -tn state established
# 显示 TIME-WAIT 状态的连接
ss -tn state time-wait
# 查看统计信息
ss -s# 分析 TCP 内部参数
ss -ti
linux下抓包工具
tcpdump
tcpdump 是 Linux 系统下的命令行网络抓包工具,能够捕获和分析网络接口上的数据包,用于调试网络问题、安全分析及协议学习。