目录
1.2 hostname命令------查看或临时设置当前主机名
1.6 lsof命令------列出系统中打开文件的命令工具
2.2 traceroute------跟踪数据包的路由途径
一、查看网络配置
1.1 ifconfig命令------查看网络接口信息
- 查看所有活动的网络接口信息
- 执行ifconfig命令
- 查看指定网络接口信息
ifconfig 网络接口
[root@localhost ~]# ifconfig ens33 #查看ens33接口信息
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.182.10 netmask 255.255.255.0 broadcast 192.168.182.255
inet6 fe80::20c:29ff:fef2:eec6 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:f2:ee:c6 txqueuelen 1000 (Ethernet)
RX packets 111062 bytes 7780324 (7.4 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 191634 bytes 77515011 (73.9 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
ifconfig常用用法
ifconfig 具体网卡名称 #只显示具体网卡的详细信息(无论该网卡是否使用)
ifconfig -a #表示显示所有网卡包括没有启动的网卡
ifconfig 网卡名称 [up|down] #表示开启或关闭网卡
ifconfig 网络接口 ip地址 [netmask 子网掩码]
ifconfig 网络接口 ip地址 [/子网掩码长度]
ifconfig ens33:0 地址 #表示虚拟网卡
关闭虚拟网卡使用
ifconfig ens33:0 down
开启
ifconfig ens33:0 up
ifconfig -s #网络通讯情况
[root@localhost ~]# ifconfig -s
Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
ens33 1500 111081 0 0 0 191645 0 0 0 BMRU
lo 65536 173 0 0 0 173 0 0 0 LRU
virbr0 1500 0 0 0 0 0 0 0 0 BMU
1.2 hostname命令------查看或临时设置当前主机名
- 查看或临时设置主机名
hostname [主机名]
- 永久设置主机名
hostnamectl set-hostname [主机名]
或者
vi hostname #在此文件内编辑 编辑完需要重启系统才能生效
1.3 router命令-----查看或设置路由表信息
- 查看或设置主机中路由表信息
route [-n]
[root@localhost ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 ens33
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
192.168.182.0 0.0.0.0 255.255.255.0 U 0 0 0 ens33
1.4 netstat命令-----查看网络连接情况
netstat常用选项
选项 | 说明 |
-a | 显示主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口) |
-n | 以数字的形式显示相关的主机地址、端口等信息 |
-r | 显示路由表信息 |
-l | 显示处于监听(Listening)状态的网络连接及端口信息 |
-t | 查看 TCP(Transmission Control Protocol,传输控制协议)协议相关的信息 |
-u | 显示 UDP(User Datagram Protocol,用户数据报协议)协议相关的信息 |
-p | 显示与网络连接相关联的进程号、进程名称信息(该选项需要 root 权限) |
常用组合选项
netstat -natp (只看TCP协议的)
netstat -antp | grep 端口号
netstat -anultp 除了路由表信息,其他全查询
示列 netstat -natp
[root@localhost ~]# netstat -natp #只看TCP协议的
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 763/rpcbind
tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 1777/dnsmasq
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1169/sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1170/cupsd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1504/master
tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN 28147/sshd: root@pt
tcp 0 0 192.168.182.10:22 192.168.182.1:51369 ESTABLISHED 28147/sshd: root@pt
tcp 0 0 192.168.182.10:22 192.168.182.1:51370 ESTABLISHED 2815
netstat -natp | grep 22
[root@localhost ~]# netstat -natp | grep 22 #查看端口22 的信息
tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 1777/dnsmasq
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1169/sshd
tcp 0 64 192.168.182.10:22 192.168.182.1:51369 ESTABLISHED 28147/sshd: root@pt
tcp 0 0 192.168.182.10:22 192.168.182.1:51370 ESTABLISHED 28151/sshd: root@no
tcp6 0 0 :::22 :::* LISTEN 1169/sshd
1.5 ss命令------获取socket统计信息
ss 命令:
也可以查看网络连接情况,主要用于获取 socket 统计信息,它可以显示和 netstat 命令类似的输出内容。
但 ss 的优势在于它能够显示更多更详细的有关 TCP 和连接状态的信息,而且比 netstat 更快速更高效
当服务器的socket连接数量变得非常大时,无论是使用netstat命令还是直接cat /proc/net/tcp,执行速度都会很慢。
ss 快的秘诀在于,它利用到了TCP协议栈中tcp_diag。tcp_diag是一个用于分析统计的模块
可以获得Linux 内核中第一手的信息,这就确保了ss的快捷高效
常用选项
选项 | 说明 |
-t | tcp协议相关 |
-u | udp协议相关 |
-w | 裸套接字相关 |
-x | unix sock相关 |
-l | listen状态的连接 |
-a | 所有 |
-n | 数字格式 |
-p | 相关的程序及PID |
-e | 扩展的信息 |
-m | 内存用量 |
-o | 计时器信息 |
-r | --resolve 把 IP 解释为域名,把端口号解释为协议名称。 |
ss -nltp | grep 22 查看tcp的所有包含22的端口
[root@localhost ~]# ss -nltp | grep 22
LISTEN 0 5 192.168.122.1:53 *:* users:(("dnsmasq",pid=1777,fd=6))
LISTEN 0 128 *:22 *:* users:(("sshd",pid=1169,fd=3))
LISTEN 0 128 [::]:22 [::]:* users:(("sshd",pid=1169,fd=4))
1.6 lsof命令------列出系统中打开文件的命令工具
- lsof(List Open Files)是一个用于列出系统中打开文件的命令行工具。
它可以显示当前系统中打开的文件、目录、套接字、管道等资源,以及与它们相关联的进程信息。
lsof常用命令选项和用法
lsof:列出所有打开的文件和网络连接
lsof -p <PID>:列出指定进程ID(PID)打开的文件和网络连接
lsof -u:列出指定用户打开的文件和网络连接
lsof -i:列出指定端口被哪些进程占用
lsof -i -sTCP:LISTEN:以监听模式查看网络连接
lsof -c ssh:列出指定命令打开的文件
示列
[root@localhost ~]# lsof -i :22 #查看22端口网络信息
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 1169 root 3u IPv4 25278 0t0 TCP *:ssh (LISTEN)
sshd 1169 root 4u IPv6 25280 0t0 TCP *:ssh (LISTEN)
sshd 28147 root 3u IPv4 244832 0t0 TCP localhost.localdomain:ssh->192.168.182.1:51369 (ESTABLISHED)
sshd 28151 root 3u IPv4 242241 0t0 TCP localhost.localdomain:ssh->192.168.182.1:51370 (ESTABLISHED)
lsof -i -a -p <PID>
在命令中,-i 参数表示只显示网络连接信息,-a 参数表示进行与查询条件的逻辑与操作,-p 参数表示指定要查询的进程ID
二、测试网络连接
2.1 ping命令------测试网络连接
- 测试网络连通性------ping
常用选项及示列
ping -c 5 www.baidu.com ping5次百度自动退出,c次数
选项 | 说明 |
-c | 发送包的个数 |
-i | 发送包的间隔时间 |
-W | 超时时间 |
-w | 多少秒后停止ping操作 |
2.2 traceroute------跟踪数据包的路由途径
- 测试从当前主机到目的主机之间经过的网络节点
traceroute 目标主机地址
- 示列
[root@localhost ~]# traceroute 192.168.182.21
traceroute to 192.168.182.21 (192.168.182.21), 30 hops max, 60 byte packets
1 localhost.localdomain (192.168.182.10) 3026.199 ms !H 3026.133 ms !H 3026.123 ms !H
2.3 nslookup------域名解析
- nslookup
- 测试DNS域名解析
nslookup 目标主机地址 【DNS服务器地址】
示列
[root@localhost ~]# nslookup www.baidu.com
Server: 114.114.114.114
Address: 114.114.114.114#53
Non-authoritative answer:
www.baidu.com canonical name = www.a.shifen.com.
Name: www.a.shifen.com
Address: 180.101.50.242
Name: www.a.shifen.com
Address: 180.101.50.188
Name: www.a.shifen.com
Address: 240e:e9:6002:15a:0:ff:b05c:1278
Name: www.a.shifen.com
Address: 240e:e9:6002:15c:0:ff:b015:146f
2.4 dig命令----域名解析更为详细
示列
[root@localhost ~]# dig www.baidu.com
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-16.P2.el7 <<>> www.baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7522
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;www.baidu.com. IN A
;; ANSWER SECTION:
www.baidu.com. 601 IN CNAME www.a.shifen.com.
www.a.shifen.com. 125 IN A 180.101.50.188
www.a.shifen.com. 125 IN A 180.101.50.242
;; Query time: 5 msec
;; SERVER: 114.114.114.114#53(114.114.114.114)
;; WHEN: 四 8月 15 23:27:32 CST 2024
;; MSG SIZE rcvd: 101
三、设置网络地址参数
3.1 临时配置------使用命令调整网络参数
- 简单、快速, 可直接修改运行中的网络参数
- 一般只适合在调试网络的过程中使用
- 系统重启以后,所做的修改将会失效
3.2 固定配置------通过配置文件修改网络参数
- 修改各项网络参数的配置文件
- 适合对服务器设置固定参数时使用
- 需要重载网络服务或者重启以后才会生效
示列-------网络接口配置文件
vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet #设置网卡类型,“Ethernet”表示以太网
DEVICE=ens33 #设置网卡的名称
ONBOOT=yes #设置网卡是否在 Linux 操作系统启动时激活
BOOTPROTO=static #设置网卡的配置方式,“static”表示使用静态IP地址,“dhcp”时表示动态获取地址
IPADDR=192.168.80.3 #设置网卡的 IP 地址
NETMASK=255.255.255.0 #设置网卡的子网掩码
GATEWAY=192.168.80.2 #设置网卡的默认网关地址
DNS1=192.168.80.2 #设置DNS服务器的 IP 地
配置DNS域名解析服务器
修改DNS域名解析配置文件:vim /etc/resolv.conf
nameserver 114.114.114.114
#nameserver表示DNS服务器名称 8.8.8.8表示DNS解析服务器地址
修改完成后需要重启网卡服务:systemctl restart network
/etc/hosts 文件
保存主机名与IP地址的映射记录 也可以指域名与IP之间的映射关系
[root@localhost ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.