Linux网络管理命令
2009 年 Debian 开发者邮件列表宣布放弃使用缺乏维护的 net-tools 工具包,net-tools 包含历史悠久的 ifconfig, netstat 等网络相关的命令
iproute2 用于取代 net-tools,在大部分的发行版都自带了。命令有 ip, ss, net 等命令替代了之前的网络操作命令。
命令对照表
net-tools | iproute2 |
---|---|
arp -na | ip neigh |
ifconfig | ip link |
ifconfig -a | ip addr show |
ifconfig -s | ip -s link |
ifconfig eth0 up | ip link set eth0 up |
ipmaddr | ip maddr |
iptunnel | ip tunnel |
netstat | ss |
netstat -i | ip -s link |
netstat -g | ip maddr |
netstat -l | ss -l |
netstat -r | ip route |
route add | ip route add |
route del | ip route del |
route -n | ip route show |
vconfig | ip link |
ip 命令
配置 ip 或者接口
ip a | 显示所有网络接口 |
ip -4 a | 显示所有 IPv4 相关网络接口 |
ip a show eth0 | 查看特定的网络接口 |
ip a add 192.168.80.174 dev eth0 | 添加 ip 地址 |
ip a del 192.168.80.174 dev eth0 | 删除 ip 地址 |
ip -s -s a f to 192.168.1.0/24 | 清除所有接口上的所有地址 |
ip link set dev eth0 address 00:0c:29:33:4e:aa | 添加 MAC 地址 |
ip link set eth0 down | 禁用网络接口 |
ip link set eth0 up | 启用网络接口 |
ip link ls up | 列出正在运行的网络接口 |
ip link set dev eth0 arp on | 启用 ARP 协议 |
ip link set txqueuelen 10000 dev eth0 | 设置队列传输长度 |
ip link set mtu 9000 dev eth0 | 设置最大传输单元 |
配置路由
1 | # 查看所有路由表 |
ss 命令
ss 是 Socket Statistics 的缩写,用来获取 socket 统计信息,可以显示和 netstat 类似的内容。ss 的优势在于它能够显示更多更详细的有关 TCP 和连接状态的信息,而且比 netstat 更快速更高效。
SS 命令使用实例
常用命令 | 作用 |
---|---|
ss -t -a | 显示 TCP 连接 |
ss -s | 显示 Sockets 摘要 |
ss -l | 列出所有打开的网络连接端口 |
ss -pl | 查看进程使用的 socket |
ss -u -a | 显示所有 UDP Sockets |
ss -anltp | 显示所有监听的 tcp 端口 |
用 TCP 状态过滤 Sockets
显示所有状态为 Established 的 HTTP 连接(http 可以换成 ssh 或数字)
1 | ss -anltp state established '( dport = :http or sport = :http )' |
state 可选的有
1 | established |
NetworkManager
NetworkManager 是一个守护进程,用户不与 NetworkManager 系统服务直接互动,而是通过图形及命令行用户界面工具执行网络配置任务。Red Hat Enterprise Linux 7 中有以下工具可用:
nmtui nmcli 和一些图形界面管理工具等
查看 NetworkManager 状态
1 | systemctl status NetworkManager |
nmcli
常用命令,connection 可以简写成 c
1 | nmcli c reload 重新加载配置文件 |
nmtui
安装
1 | yum install NetworkManager-tui |
文本图形工具,使用方法略
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 杂烩饭!
评论