Linux网络配置和监控命令总结
作者:活老鬼
本文介绍了Linux系统中常用的网络配置和监控命令,包括ifconfig、hostname、route、netstat、ss、lsof、ping、traceroute、nslookup等命令的使用方法和作用,适用于系统管理员在日常管理和故障排查中的网络操作
一、查看网络配置
1. ifconfig 命令 - 查看网络接口信息
ifconfig #查看所有活动的网络接口信息 ifconfig "网络接口" #查看指定的网络接口信息(无论网卡是否启用) ifconfig -a #显示所有网络接口信息(包括未启用的网卡) ifconfig "网络接口" "ip地址/掩码长度" #设置虚拟网卡 例: ifconfig ens33:0 192.168.10.11/24 ifconfig ens33:0 down #临时禁用虚拟网卡 ifconfig ens33:0 up #开启虚拟网卡 ifdown "网络接口" #禁用网卡 ifup "网络接口" #启动网卡
2. hostname 命令 - 查看主机名称
- 查看或临时设置当前主机名:
hostname "主机名"
- 永久设置主机名:
hostnamectl set-hostname "主机名" vi hostname #设置完成后需重启系统生效
3. route 命令 - 查看路由表条目
查看或设置主机中的路由表信息
route -n
二、查看网络连接情况
1. nestat 命令
nestat "选项"
常用选项 | 解释 |
---|---|
-a | 显示主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口) |
-n | 以数字的形式显示相关的主机地址、端口等信息 |
-r | 显示路由表信息 |
-l | 显示处于监听(Listening)状态的网络连接及端口信息 |
-t | 查看TCP(Transmission Control Protocol,传输控制协议)相关的信息 |
-u | 查看UDP(User Datagram Protocol,用户数据包协议)相关的信息 |
-p | 显示与网络连接相关的进程号、进程名称信息(该选项需要root权限) |
2. ss 命令
ss "选项"
选项 | 解释 |
---|---|
-t | TCP协议相关 |
-u | UDP协议相关 |
-w | 裸套接字相关 |
-x | unix sock相关 |
-l | Listen状态的连接 |
-a | 所有 |
-n | 数字格式 |
-p | 相关的程序及PID |
-e | 扩展的信息 |
-m | 内存用量 |
-o | 计时器信息 |
-r | --resolve 把IP解释为域名,把端口号解释为协议名称 |
3. netstat 命令与ss 命令的区别
- ss 命令可以查看网络连接信息
- ss 命令主要向socket获取统计信息
- ss 命令可以查看内存
- 2条命令均可查看pid和程序\进程名
4. lsof 命令(List Open Files)- 列出系统中打开的文件的命令行工具
它可以显示当前系统中打开的文件、目录、套接字、管道等资源,以及与它们相关进程
lsof "选项"
lsof #列出所有打开的文件和网络连接 lsof -p "pid" #列出指定进程ID(PID)打开的文件和网络连接 lsof -u "username" #列出指定用户打开的文件和网络连接 lsof -i:"端口号" #列出指定端口被哪些进程占用 lsof -i -sTCP:LISTEM #以监听模式查看网络连接 lsof -c "commond" #列出指定命令打开的文件 lsof -i -P -a -p "PID" # -i:表示只显示网络连接信息 # -P:强制显示端口号 # -a:表示进行与查询条件的逻辑与操作 # -p:表示指定要查询的程序ID
三、测试网络连接
1. ping 命令 - 测试网络连通性
ping "选项"
常用选项 | 解释 |
---|---|
-c | 发送包的个数 |
-i | 发送包的间隔时间 |
-W | 超时时间 |
-w | 多少秒后停止ping命令操作 |
2. traceroute - 跟踪数据包的路由途径
测试从当前主机到目的主机之间经过的网路节点
traceroute "目标主机地址"
3. nslookup - 测试DNS域名解析
nslookup "地址"
[root@wzx ~]# nslookup www.csdn.net Server: 114.114.114.114 Address: 114.114.114.114#53 Non-authoritative answer: www.csdn.net canonical name = 55cb88f4.csdn.net.cname.yunduns.com. Name: 55cb88f4.csdn.net.cname.yunduns.com Address: 218.95.237.78
四、设置网络参数
1.设置网络参数的方式
临时配置 - 使用命令调整网络参数
- 简单、快速,可直接修改运行中的网络参数
- 一般只适合在调试网络的过程中使用
- 系统重启以后,所做的修改将会失效
固定设置 - 通过配置文件修改网络参数
- 修改各项网络参数的配置文件
- 适合对服务器设置固定参数时使用
- 需要重载网络服务器或者重启以后才会生效
2. ifconfig 命令 - 设置网络接口参数
- 设置网络接口的IP地址、子网掩码:
ifconfig "网络接口" "ip地址" netmask "子网掩码"
ifconfig "网络接口" "IP地址/掩码长度"
- 禁用或重新激活网卡:
ifconfig "网络接口" up
ifconfig "网络接口" down
- 设置虚拟网络接口
ifconfig "网络接口:序号" "IP地址"
3. route 命令 - 设置路由记录
- 添加到指定网段的路有记录:
route add -net "网段地址" gw "IP地址"
- 删除到指定网段的路有记录:
route del -net "网段地址"
- 向路由表中添加默认网关记录:
route add default gw "IP地址"
- 删除路由表中默认的网关记录:
route del default gw "IP地址"
4.永久添加路由
静态路由配置文件:/etc/sysconfig/static-routes
vi /etc/sysconfig/static-routes #编辑静态路由配置文件 any net any gw 192.168.233.21 #将所有网络流量都路由到192.168.233.21网关 any net 192.168.3.0/24 gw 192.168.233.21 #将目的网络为192.168.3.0/24的所有流量路由到192.168.233.21网关 anynet 10.0.0.0 netmask 255.0.0.0 gw 192.168.233.21 #将目的网络为10.0.0.0的所有流量,使用掩码255.0.0.0,路由到192.168.233.21网关 any host 192.168.100.100 gw 192.168.233.21 #将目的IP为192.168.100.100的所有流量路由到192.168.233.21网关 #修改后需要重启网络服务,否则修改不生效 systemctl restart network #重启网络服务
5.配置网络接口
网卡配置文件:/etc/sysconfig/network-scripts/ifcfg-ens33
vi /etc/sysconfig/network-scripts/ifcfg-ens33 #编辑网卡配置文件 TYPE=Ethernet #设置网卡类型,"Ethernet"表示以太网 DEVICE=ens33 #设置网卡名称 ONBOOT=yes #设置网卡是否在Linux操作系统启动时激活 BOOTPROTO=static #设置网卡的配置方式,"static"表示使用静态IP地址;"dhcp"表示动态获取IP地址 IPADDR=192.168.100.10 #设置网卡的IP地址 NETMASK=255.255.255.0 #设置网卡的子网掩码 GATEWAY=192.168.100.2 #设置网卡的默认网关地址 DNS1=114.114.114.114 #设置DNS服务器的IP(配置于网卡上) systemctl restart network #配置完成后需重启网卡
6.配置DNS域名解析服务器
域名解析配置文件:/etc/resolv.conf
vi /etc/resolv.conf nameserver 144.144.144.144 #配置DNS于系统中 systemctl restart network #配置完成后需重启网卡服务
7.保存域名\主机名与IP地址的映射记录
文件位于:/etc/hosts
vi /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 218.95.237.78 www.csdn.net 192.168.10.20 server2
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。