陈忠平 发表于 2023-4-28 02:10:36

快速上手Linux核心命令(八):网络相关命令

目录

[*]前言
[*]测试主机之间网络是否联通
[*]ifconfig 配置或显示网络信息
[*]route 显示或管理路由表
[*]netstat 查看网络状况
[*]telnet 远程登录主机
[*]ssh 安全的远程登录主机
[*]wget 命令行下载工具
[*]ip网络配置工具
[*]tcpdump 监听网络流量
[*]nmap 网络探测工具和安全/端口扫描器
[*]ifup 激活网络接口
[*]ifdown 禁用网络接口
[*]arp 管理系统的arp缓存
[*]ss 查看网络状况
[*]nc 多功能网络工具
[*]mail 发送和接收文件
[*]nslookup 域名查询工具
[*]dig 域名查询工具
[*]host 域名查询工具

前言

这期呢主要说一说Linux中与网络相关命令,一共包含19个命令

测试主机之间网络是否联通

1、简介
ping 命令不管是在Windows还是Linux都是比较常用的命令。命令用于测试主机之间的网络连通性
2、语法格式
ping [参数选项] [目标主机]3、参数说明
参数参数说明-c指定报文次数,若不指定,ping命令将一直发送报文-i相邻两次发送报文的时间间隔,默认时间间隔是1s-s设置发送数据包大小,默认为56字节,加上8字节ICMP头,共64字节数据包还有其他的参数,这里就不一一列举了。。。。
4、实践操作
①测试与目标主机的网络连通性
# 网络正常情况
# ping www.xiezhrspace.cn
PING www.xiezhrspace.cn (42.192.46.248) 56(84) bytes of data.
64 bytes from 42.192.46.248 (42.192.46.248): icmp_seq=1 ttl=63 time=0.233 ms
64 bytes from 42.192.46.248 (42.192.46.248): icmp_seq=2 ttl=63 time=0.215 ms
64 bytes from 42.192.46.248 (42.192.46.248): icmp_seq=3 ttl=63 time=0.230 ms
64 bytes from 42.192.46.248 (42.192.46.248): icmp_seq=4 ttl=63 time=0.235 ms
64 bytes from 42.192.46.248 (42.192.46.248): icmp_seq=5 ttl=63 time=0.235 ms
64 bytes from 42.192.46.248 (42.192.46.248): icmp_seq=6 ttl=63 time=0.246 ms
64 bytes from 42.192.46.248 (42.192.46.248): icmp_seq=7 ttl=63 time=0.243 ms
64 bytes from 42.192.46.248 (42.192.46.248): icmp_seq=8 ttl=63 time=0.215 ms
64 bytes from 42.192.46.248 (42.192.46.248): icmp_seq=9 ttl=63 time=0.227 ms

# 网络不正常
# ping 10.10.114.56
PING 10.10.114.56 (10.10.114.56) 56(84) bytes of data.上面命令执行后会一直发送报文,相当于windows中的ping www.baidu.com -t
② 指定发送报文的次数
# 发送报文4次后自动退出
# ping -c 4 www.xiezhrspace.cn
PING www.xiezhrspace.cn (42.192.46.248) 56(84) bytes of data.
64 bytes from 42.192.46.248 (42.192.46.248): icmp_seq=1 ttl=63 time=0.230 ms
64 bytes from 42.192.46.248 (42.192.46.248): icmp_seq=2 ttl=63 time=0.248 ms
64 bytes from 42.192.46.248 (42.192.46.248): icmp_seq=3 ttl=63 time=0.226 ms
64 bytes from 42.192.46.248 (42.192.46.248): icmp_seq=4 ttl=63 time=0.214 ms

--- www.xiezhrspace.cn ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3021ms
rtt min/avg/max/mdev = 0.214/0.229/0.248/0.019 ms③ 多参数使用情况
# ping -c 4 -i 3 -s 1024 -t 255 www.xiezhrspace.cn
PING www.xiezhrspace.cn (42.192.46.248) 1024(1052) bytes of data.
1032 bytes from 42.192.46.248 (42.192.46.248): icmp_seq=1 ttl=63 time=0.214 ms
1032 bytes from 42.192.46.248 (42.192.46.248): icmp_seq=2 ttl=63 time=0.250 ms
1032 bytes from 42.192.46.248 (42.192.46.248): icmp_seq=3 ttl=63 time=0.226 ms
1032 bytes from 42.192.46.248 (42.192.46.248): icmp_seq=4 ttl=63 time=0.261 ms

--- www.xiezhrspace.cn ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 9027ms
rtt min/avg/max/mdev = 0.214/0.237/0.261/0.026 ms上面列子中参数解释

[*]-c 4 : 发送4次报文
[*]-i3:每隔3s发送一次报文
[*]-s 1024: 每次发送数据报文大小为1024字节
[*]-t 255:**发送数据包的ttl值为255 **
ifconfig 配置或显示网络信息

1、简介
ifconfig命令类似于Windows 下的ipconfig 。不知道大家会不会混淆在一起,反正我是经常混淆了在一起(●'◡'●)。命令用于显示网卡IP地址等参数信息
2、语法格式
ifconfig [网路接口] [参数选项]网络接口指的是:eth0、eth1和lo 分别表示第一块网卡、第二块网卡和回环接口。该选项是非必填项
3、 参数说明
参数参数说明-a显示所有网络接口信息,包括活动的和非活动的-up激活指定网络接口-down关闭指定网络接口hw设置网络接口的物理地址(MAC地址)4、实践操作
①显示当前系统开启的所有网络接口信息
# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>mtu 1500
      inet 172.17.0.4netmask 255.255.240.0broadcast 172.17.15.255
      inet6 fe80::5054:ff:fe19:f6d0prefixlen 64scopeid 0x20<link>
      ether 52:54:00:19:f6:d0txqueuelen 1000(Ethernet)
      RX packets 254776100bytes 26271134342 (24.4 GiB)
      RX errors 0dropped 0overruns 0frame 0
      TX packets 331164543bytes 72224346549 (67.2 GiB)
      TX errors 0dropped 0 overruns 0carrier 0collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>mtu 65536
      inet 127.0.0.1netmask 255.0.0.0
      inet6 ::1prefixlen 128scopeid 0x10<host>
      looptxqueuelen 1000(Local Loopback)
      RX packets 143816bytes 10756556 (10.2 MiB)
      RX errors 0dropped 0overruns 0frame 0
      TX packets 143816bytes 10756556 (10.2 MiB)
      TX errors 0dropped 0 overruns 0carrier 0collisions 0

[*]eth0表示第一块网卡、第二块为eth1,依次类推;lo表示回环接口
②显示指定网卡eth0信息
# ifconfig eth0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>mtu 1500
      inet 172.17.0.4netmask 255.255.240.0broadcast 172.17.15.255
      inet6 fe80::5054:ff:fe19:f6d0prefixlen 64scopeid 0x20<link>
      ether 52:54:00:19:f6:d0txqueuelen 1000(Ethernet)
      RX packets 254778009bytes 26271295935 (24.4 GiB)
      RX errors 0dropped 0overruns 0frame 0
      TX packets 331166449bytes 72224671528 (67.2 GiB)
      TX errors 0dropped 0 overruns 0carrier 0collisions 0③ 启动关闭网卡
# 关闭网卡
# ifconfig eth0 down
# 启动网卡
# ifconfig eth0 up④ 设置网卡IP
ifconfig eth0 192.168.205.98 route 显示或管理路由表

1、简介
route 命令用来显示或管理Linux的路由表
2、路由小科普
说到路由,不得不简单做下科普。这里只是简单通俗介绍一下,如果需要了解更多请查阅相关资料哈
路由表与生活中的路标指示牌类似,指示牌指引着我们该往什么地方走;而路由表则指引着数据包该去向何方。

不得不说技术源于生活,又服务于生活。
那么,两台计算机之间是怎么传输数据的呢?

[*]数据的传输必须要又网络来完成,而网络是由两台计算机之间一个或多个节点构成的
[*]数据传输由一台计算机传送到第一个网络节点,然后这个网络节点会根据“约定”将数据传宋到另一个网络节点,另一个网络节点再根据“约定”将数据传输到下一个节点,直到把数据传输到另一台计算机。 这里的“约定”就是我们上面说的路由表
[*]路由表说白了就是指定了一些规则,标明数据报文该何去何从
[*]路由分为静态路由和动态路由。
[*]我们通过route命令手动加入的路由属于静态路由;动态路由时无需手动加入的,其路由规则时不同计算机彼此相互交换路由规则而来的
3、语法格式
route [参数选项]4、参数说明
参数参数说明-n直接使用ip地址,不进行DNS解析主机名add添加路由信息del删除路由信息-net到一个网络的路由,参数后面接的是一个网络号地址-host到一个主机的路由,参数后面接的时一个主机地址netmask NM为添加的路由指定网络掩码gw GW为发往木匾网络/主机的任何分组指定网关dev If指定有哪个网络设备出去,后面接网络设备名 如:eth05、实践操作
① 查看当前系统路由表信息
# route
Kernel IP routing table
Destination   Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         0.0.0.0         UG    0      0      0 eth0
link-local      0.0.0.0         255.255.0.0   U   1002   0      0 eth0
172.17.0.0      0.0.0.0         255.255.240.0   U   0      0      0 eth0

[*]Destination :网络号,也就是network的意思
[*]Gateway:连出网关地址,也就是说该网络时通过该IP连接出去的,0.0.0.0,则表示该路由直接由本机传送出去。如果由具体IP,表示本条路由必须经过该IP转接才能连接出去
[*]Genmask:表示子网掩码
[*]Flags:路由标记信息

[*]U :表示此路由当前为启动状态
[*]H:目标路由是一个主机(IP)而非网络
[*]R:使用动态路由时,恢复路由信息标识
[*]G:表示他需要通过外部的注解来转接传递数据
[*]M:表示路由已经被修改
[*]D:已经由服务设定为动态路由

[*]Metric :表示需要经过几个网络节点才能到达路由的目标网络地址
[*]Ref:参考到此路由规则的数目
[*]Use:有几个转送数据包参考到了此路由规则
[*]Iface:路由对应的网络设备接口
② 添加或删除路由
# 删除默认网关方法1
# route del default
# 删除默认网关方法2
# route del default gw 10.0.0.2
# 添加网关
# route add default gw 10.0.0.2 dev eth0netstat 查看网络状况

1、简介
netstat 命令用于显示本机网络的连接状态、运行端口和路由表等信息
2、语法格式
netstat [参数选项]3、参数说明
参数参数说明-n显示数字形式的地址而不是去解析主机、端口或用户名-a显示处于监听状态和非监听状态的socket信息-c后面跟的秒数表示每隔几秒就刷新显示一次-t显示所有的TCP连接情况-u显示所有的UDP连接情况-p显示socket所属进程的PID和名称4、实践操作
① 显示详细的所有连接信息
# netstat -an
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address         Foreign Address         State      
tcp      0      0 0.0.0.0:80            0.0.0.0:*               LISTEN   
tcp      0      0 172.17.0.4:80         103.127.81.10:33832   SYN_RECV   
tcp      0      0 172.17.0.4:80         154.221.22.70:44617   SYN_RECV   
tcp      0      0 172.17.0.4:80         103.195.150.7:31982   SYN_RECV
。。。
udp      0      0 0.0.0.0:68            0.0.0.0:*                        
udp      0      0 172.17.0.4:123          0.0.0.0:*                        
udp      0      0 127.0.0.1:123         0.0.0.0:*                        
udp6       0      0 fe80::5054:ff:fe19::123 :::*                              
udp6       0      0 ::1:123               :::*                              
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node   Path
unix2      [ ACC ]   STREAM   LISTENING   12804    /var/run/lsm/ipc/simc
unix2      [ ACC ]   STREAM   LISTENING   12810    /var/run/lsm/ipc/sim简单说明下上面显示内容的含义
列数名称含义第一列Protosocket使用的协议(TCP/UDP/RAW)第二列Recv-Q接收到但是还未处理的字节数第三列Send-Q已经发送但是未被远程主机确认收到的字节数第四列Local Address本机主机地址和端口第五列Froeign Address远程主机地址和端口第六列Statetcp状态② 显示所有TCP、UDP正在监听的连接信息
# netstat -lntup
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address         Foreign Address         State       PID/Program name   
tcp      0      0 0.0.0.0:80            0.0.0.0:*               LISTEN      2812/nginx: master
tcp      0      0 0.0.0.0:22            0.0.0.0:*               LISTEN      980/sshd            
tcp      0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      2812/nginx: master
tcp      0      0 0.0.0.0:65535         0.0.0.0:*               LISTEN      17087/./proc      
tcp6       0      0 :::80                   :::*                  LISTEN      2812/nginx: master
tcp6       0      0 :::3000               :::*                  LISTEN      27339/PM2 v4.5.1: G
tcp6       0      0 :::443                  :::*                  LISTEN      2812/nginx: master
udp      0      0 0.0.0.0:68            0.0.0.0:*                           809/dhclient      
udp      0      0 172.17.0.4:123          0.0.0.0:*                           546/ntpd            
udp      0      0 127.0.0.1:123         0.0.0.0:*                           546/ntpd            
udp6       0      0 fe80::5054:ff:fe19::123 :::*                              546/ntpd            
udp6       0      0 ::1:123               :::*                              546/ntpd ③ 显示当前系统的路由表
# netstat -rn
Kernel IP routing table
Destination   Gateway         Genmask         Flags   MSS Windowirtt Iface
0.0.0.0         172.17.0.1      0.0.0.0         UG      0 0          0 eth0
169.254.0.0   0.0.0.0         255.255.0.0   U         0 0          0 eth0
172.17.0.0      0.0.0.0         255.255.240.0   U         0 0          0 eth0④ 显示网络的接口状况
# netstat -i
Kernel Interface table
Iface             MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0             1500 257171559      0      0 0      334662383      0      0      0 BMRU
lo            65536   144476      0      0 0      144476      0      0      0 LRUtelnet 远程登录主机

1、简介
telnet以前用于远程登录主机,但是其安全性不好。因此现在一般采用更加安全的SSH,这个后面也会说到。
现在telnet命令主要用于判断远端服务器端口是否开发
2、语法格式
telnet [参数选项] [主机名或IP] [端口]3、实际操作
①测试端口是否开放
# telnet 112.112.17.172 31189ssh 安全的远程登录主机

1、简介
ssh命令用于安全的登录远程服务器,实现对服务器的远程管理。取代了telnet命令
2、语法格式
ssh [参数选项] [用户名@] [主机名或IP地址] [远程执行的名]3、参数说明
参数参数说明-p指定ssh登录端口,如果忽略则默认为22端口-t强制分配伪终端,可以在远程机器上执行任何全屏幕程序。-v调试模式4、实践操作
① 远程登录服务器
# ssh 220.165.5.45②远程执行命令
# ssh 10.0.0.26 "free -m"wget 命令行下载工具

1、简介
wget 用于从网络上下载某些资料。只要Linux连接互联网,就可以直接从网络上下载自己所需的文件


[*]支持断点下载
[*]支持ftp和http下载方式
[*]支持代理服务器
[*]非常稳定。如果由于网络原因下载失败,wget 会不断尝试,直到整个文件下载完毕。如果服务器打断了下载过程,当再次连接服务器时,会从停止的地方继续下载。【这对下载大文件非常有用】
2、语法格式
wget [参数选项] [下载地址]3、参数说明
参数参数说明-O指定保存的文件名后下载文件--limit-rate限速下载-b转入后台执行命令-c断点续传--tries=number设置重置次数--spider模拟爬虫访问4、实践操作
① wget下载单个文件
# wget https://xiezhrspace.cn/medias/logo.png
--2022-05-30 23:08:24--https://xiezhrspace.cn/medias/logo.png
Resolving xiezhrspace.cn (xiezhrspace.cn)... ::1, ::1
Connecting to xiezhrspace.cn (xiezhrspace.cn)|::1|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 112674 (110K)
Saving to: ‘logo.png’

100%[========================================================================================================================================================================>] 112,674   --.-K/s   in 0s      

2022-05-30 23:08:24 (433 MB/s) - ‘logo.png’ saved ②使用-O参数,指定下载文件的保存文件名
# wget -O /home/test/logo.png https://www.xiezhrspace.cn/medias/logo.png
--2022-05-30 23:14:03--https://www.xiezhrspace.cn/medias/logo.png
Resolving www.xiezhrspace.cn (www.xiezhrspace.cn)... 42.192.46.248
Connecting to www.xiezhrspace.cn (www.xiezhrspace.cn)|42.192.46.248|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 112674 (110K)
Saving to: ‘/home/test/logo.png’

100%[========================================================================================================================================================================>] 112,674   --.-K/s   in 0.01s   

2022-05-30 23:14:03 (9.78 MB/s) - ‘/home/test/logo.png’ saved

# cd /home/test/
# ll
total 208
-rw-r--r-- 1 root   root   112674 Nov 292020 logo.png③ 限速3kb/s下载
# wget --limit-rate=3k https://www.xiezhrspace.cn/medias/logo.png
--2022-05-30 23:15:57--https://www.xiezhrspace.cn/medias/logo.png
Resolving www.xiezhrspace.cn (www.xiezhrspace.cn)... 42.192.46.248
Connecting to www.xiezhrspace.cn (www.xiezhrspace.cn)|42.192.46.248|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 112674 (110K)
Saving to: ‘logo.png.1’

100%[========================================================================================================================================================================>] 112,674   3.00KB/s   in 37s   

2022-05-30 23:16:34 (3.00 KB/s) - ‘logo.png.1’ saved ④ 断点续传下载大文件
# wget -c https://mirrors.aliyun.com/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1611.iso⑤后台下载文件
# wget -b https://www.xiezhrspace.cn/medias/logo.png
Continuing in background, pid 4526.
Output will be written to ‘wget-log’.⑥ 有些网站会根据判断代理名称是不是浏览器而拒绝你的下载请求,这时候就可以伪装代理下载
# wget -b https://www.xiezhrspace.cn/medias/logo.png
Continuing in background, pid 4526.
Output will be written to ‘wget-log’.# clear# wget --user-agent="Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.75 Safari/537.36" https://www.xiezhrspace.cn/medias/logo.png--2022-05-30 23:29:27--https://www.xiezhrspace.cn/medias/logo.pngResolving www.xiezhrspace.cn (www.xiezhrspace.cn)... 42.192.46.248Connecting to www.xiezhrspace.cn (www.xiezhrspace.cn)|42.192.46.248|:443... connected.HTTP request sent, awaiting response... 200 OKLength: 112674 (110K) Saving to: ‘logo.png.3’100%[========================================================================================================================================================================>] 112,674   --.-K/s   in 0.01s   2022-05-30 23:29:27 (9.85 MB/s) - ‘logo.png.3’ saved ⑦ 监控网站URL是否正常
# 采用静默方式访问网站,3秒超时,重试1次,模拟爬虫方式进行访问
# wget -q -T 3 --tries=1 --spider www.xiezhrspace.cn
# 返回0表示正常
# echo $?
0ip网络配置工具

1、简介
ip 命令用于显示或管理Linux系统的路由、网络设备、策略路由和隧道
2、语法格式
ip [参数选项] [网络对象] [操作命令]3、参数说明
参数参数说明-s输出更详细的信息-r显示主机时,不适用ip地址,而是使用主机的域名-V显示命令的版本信息3、网络对象及对应操作命令
网络对象网络对象说明对应操作命令link网络设备set:修改设备属性、show:显示设备属性address设备的协议地址(IP地址)add:添加协议地址、del:删除协议地址、flush:清除协议地址、show:查看协议地址addrlabel协议地址标签管理add、del、list、flushneighbourarp或ndisc缓存表route路由表add、change、relpace、delete、show、flushrule策略路由表add、delete、flush、showmaddress多播地址show、add、deletemroute多播路由缓存表showtunnelIP隧道add、change、delete、prl、show4、实践操作
ip link show                     # 显示网络接口信息
ip link set eth0 up             # 开启网卡
ip link set eth0 down            # 关闭网卡
ip link set eth0 promisc on      # 开启网卡的混合模式
ip link set eth0 promisc offi    # 关闭网卡的混个模式
ip link set eth0 txqueuelen 1200 # 设置网卡队列长度
ip link set eth0 mtu 1400      # 设置网卡最大传输单元
ip addr show   # 显示网卡IP信息
ip addr add 192.168.0.1/24 dev eth0 # 设置eth0网卡IP地址192.168.0.1
ip addr del 192.168.0.1/24 dev eth0 # 删除eth0网卡IP地址

ip route show # 显示系统路由
ip route add default via 192.168.1.254   # 设置系统默认路由
ip route list               # 查看路由信息
ip route add 192.168.4.0/24via192.168.0.254 dev eth0 # 设置192.168.4.0网段的网关为192.168.0.254,数据走eth0接口
ip route add default via192.168.0.254dev eth0      # 设置默认网关为192.168.0.254
ip route del 192.168.4.0/24   # 删除192.168.4.0网段的网关
ip route del default          # 删除默认路由
ip route delete 192.168.1.0/24 dev eth0 # 删除路由tcpdump 监听网络流量

1、简介
tcpdump 命令是一个包分析工具。可以将网络中传输的数据包的“头”完全截获下来以提供分析。
2、语法格式
tcpdump [参数选项] [表达式]3、参数说明
参数参数说明-c接收指定数据包数目后退出命令-i指定要监听数据包的网络接口-n不精细DNS解析,加快显示速度-nn不将协议和端口数字等转换成名字-q以快速输出的方式运行,输出的信息比较简洁4、实践操作
① 不带参数监听网络
# tcpdump
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
21:49:34.194426 IP xiezhr.ssh > 39.130.60.147.54868: Flags , seq 2354337386:2354337582, ack 602321997, win 255, length 196
21:49:34.194837 IP xiezhr.55410 > 183.60.82.98.domain: 13037+ PTR? 147.60.130.39.in-addr.arpa. (44)
21:49:34.241013 IP 39.130.60.147.54868 > xiezhr.ssh: Flags [.], ack 0, win 511, length 0
21:49:34.260399 IP 183.60.82.98.domain > xiezhr.55410: 13037 NXDomain 0/1/0 (93)
21:49:34.261639 IP xiezhr.44621 > 183.60.83.19.domain: 25778+ PTR? 4.0.17.172.in-addr.arpa. (41)
21:49:34.262436 IP 183.60.83.19.domain > xiezhr.44621: 25778 NXDomain 0/1/0 (100)② 精简输出信息
# tcpdump -q
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
21:51:39.084015 IP xiezhr.ssh > 39.130.60.147.54868: tcp 196
21:51:39.084415 IP xiezhr.54183 > 183.60.83.19.domain: UDP, length 44
21:51:39.084690 IP 183.60.83.19.domain > xiezhr.54183: UDP, length 93
21:51:39.095563 IP xiezhr.37447 > 183.60.82.98.domain: UDP, length 41
21:51:39.095795 IP 183.60.82.98.domain > xiezhr.37447: UDP, length 100
21:51:39.107963 IP xiezhr.57539 > 183.60.83.19.domain: UDP, length 43
21:51:39.108025 IP xiezhr.ssh > 39.130.60.147.54868: tcp 100
21:51:39.108749 IP 183.60.83.19.domain > xiezhr.57539: UDP, length 107
21:51:39.118945 IP xiezhr.51494 > 183.60.82.98.domain: UDP, length 43
21:51:39.119024 IP xiezhr.ssh > 39.130.60.147.54868: tcp 180
21:51:39.119165 IP 183.60.82.98.domain > xiezhr.51494: UDP, length 107
21:51:39.130005 IP xiezhr.ssh > 39.130.60.147.54868: tcp 596
21:51:39.130036 IP xiezhr.ssh > 39.130.60.147.54868: tcp 100③监听指定网卡收到的数据包
# tcpdump -i eth0
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
21:52:41.482275 IP 169.254.0.4.http > xiezhr.45330: Flags [.], ack 31739111, win 136, length 0
21:52:41.486536 IP xiezhr.48369 > 183.60.82.98.domain: 56337+ PTR? 4.0.17.172.in-addr.arpa. (41)
^C21:52:41.487054 IP xiezhr.ssh > 39.130.60.147.54868: Flags , seq 2354686734:2354686930, ack 602325169, win 255, length 196④ 监听指定主机数据包
# tcpdump -n host 220.165.5.50
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes⑤ 监听指定端口数据包
# tcpdump -nn port 22
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
21:54:39.961652 IP 172.17.0.4.22 > 39.130.60.147.54868: Flags , seq 2354867994:2354868190, ack 602329953, win 255, length 196
21:54:39.961828 IP 172.17.0.4.22 > 39.130.60.147.54868: Flags , seq 196:376, ack 1, win 255, length 180
21:54:39.961860 IP 172.17.0.4.22 > 39.130.60.147.54868: Flags , seq 376:524, ack 1, win 255, length 148
21:54:39.961888 IP 172.17.0.4.22 > 39.130.60.147.54868: Flags , seq 524:672, ack 1, win 255, length 148
21:54:39.961916 IP 172.17.0.4.22 > 39.130.60.147.54868: Flags , seq 672:820, ack 1, win 255, length 148
21:54:39.961943 IP 172.17.0.4.22 > 39.130.60.147.54868: Flags , seq 820:968, ack 1, win 255, length 148
21:54:39.961971 IP 172.17.0.4.22 > 39.130.60.147.54868: Flags , seq 968:1116, ack 1, win 255, length 148
21:54:39.961998 IP 172.17.0.4.22 > 39.130.60.147.54868: Flags , seq 1116:1264, ack 1, win 255, length 148nmap 网络探测工具和安全/端口扫描器

1、简介
nmap 是一款开源的网络探测和安全审核工具。其作用是快速扫描大型网络,并发现网络上有哪些主机,主机提供哪些服务,并探测操作系统的类型及版本信息
如果系统没有nmap命令,可通过一下命令安装
yum -y install nmap2、语法格式
nmap [扫描类型] [通用选项] [扫描目标]3、参数说明
参数参数说明-sSTCP同步扫描-sn不进行端口扫描,只检查主机正在运行-v显示扫描过程中的详细信息-n不进行DNS解析,加快扫描速度-p指定扫描端口,可以是一个单独的端口,也可以是逗号分隔的多个端口4、实践操作
① 查看主机当前开放的端口
# nmap 127.0.0.1 ②扫描主机的指定端口
#nmap -p 1024-65535 127.0.0.1③扫描局域网内所有IP
# nmap 10.0.0.0/24ifup 激活网络接口

1、简介
ifup 用于激活指定的网络接口
2、语法格式
ifup [网络接口]3、实践操作
激活网络接口
# ifup eht0ifdown 禁用网络接口

1、简介
ifdown命令与上面说的ifup命令刚好作用相反,用于禁用网络接口
2、语法格式
ifdown [网络接口]3、实践操作
禁用网络接口
# ifdown eht1arp 管理系统的arp缓存

1、简介
首先我们先来看看什么是arp? arp是地址解析协议,主要功能是通过ip地址获取物理地址(MAC地址)
arp命令用于操作本机arp缓存,可以显示、删除、添加指定IP地址与MAC地址对应关系
2、语法格式
arp [参数选项]3、参数说明
参数参数说明-n显示数字IP地址-s 指定主机的IP地址与MAC地址静态映射关系-d从arp缓存区中删除指定主机的arp条目4、实践操作
① 显示arp缓存区的所有条目
# arp
Address                  HWtypeHWaddress         Flags Mask            Iface
169.254.0.79             ether   fe:ee:00:2e:16:9a   C                     eth0
169.254.128.6            ether   fe:ee:00:2e:16:9a   C                     eth0
169.254.0.4            ether   fe:ee:00:2e:16:9a   C                     eth0
169.254.128.4            ether   fe:ee:00:2e:16:9a   C                     eth0
169.254.0.2            ether   fe:ee:00:2e:16:9a   C                     eth0
169.254.0.15             ether   fe:ee:00:2e:16:9a   C                     eth0
169.254.0.55             ether   fe:ee:00:2e:16:9a   C                     eth0
169.254.0.81             ether   fe:ee:00:2e:16:9a   C                     eth0
169.254.0.82             ether   fe:ee:00:2e:16:9a   C                     eth0
169.254.0.83             ether   fe:ee:00:2e:16:9a   C                     eth0
169.254.0.80             ether   fe:ee:00:2e:16:9a   C                     eth0
172.17.0.5               ether   fe:ee:00:2e:16:9a   C                     eth0
gateway                  ether   fe:ee:00:2e:16:9a   C                     eth0
169.254.0.23             ether   fe:ee:00:2e:16:9a   C                     eth0② 查询指定主机的arp条目
# arp -n 42.192.46.248
42.192.46.248 (42.192.46.248) -- no entrys③ 静态绑定IP地址与MAC地址
#arp -s 10.0.0.100 00:0c:29:c0:5e:dfss 查看网络状况

1、简介
ss 命令用于查看网络状态信息,包括TCP、UDP连接、端口。
如果系统没有该命令,需要自己安装一下
yum -y install iproute2、语法格式
ss [参数选项] [过滤器]3、参数说明
参数参数说明-n显示IP地址不进行DNS解析-a显示所有socket连接-l显示所有监听socket-p显示使用socket的进程-t仅显示TCP的socket-u仅显示UCP的socket4、实践操作
① 显示所有的socket连接
# ss -an
NetidState      Recv-Q Send-Q      Local Address:Port       Peer Address:Port            
nl   UNCONN   0      0                         0:0                      *                  
nl   UNCONN   0      0                         0:546                  *                  
nl   UNCONN   0      0                         0:546                  *                  
nl   UNCONN   4352   0                         4:30221                  *                  
nl   UNCONN   768    0                         4:0                      *                  
nl   UNCONN   0      0                         6:0                        ② 显示所有正在监听的TCP和UDP连接
NetidState   Recv-QSend-QLocal                               Address:PortPeer                                                      Address:Port
udp    UNCONN0       0       *:68                              *:*         users:(("dhclient",pid=809,fd=6))
udp    UNCONN0       0       172.17.0.4:123                      *:*         users:(("ntpd",pid=546,fd=19))
udp    UNCONN0       0       127.0.0.1:123                     *:*         users:(("ntpd",pid=546,fd=16))
udp    UNCONN0       0       %eth0:123[::]:*      users:(("ntpd",pid=546,fd=20))
udp    UNCONN0       0       [::1]:123                           [::]:*      users:(("ntpd",pid=546,fd=17))
tcp    LISTEN0       128   *:80                              *:*         users:(("nginx",pid=26238,fd=6),("nginx",pid=2812,fd=6))
tcp    LISTEN0       128   *:22                              *:*         users:(("sshd",pid=980,fd=3))
tcp    LISTEN0       128   *:443                               *:*         users:(("nginx",pid=26238,fd=8),("nginx",pid=2812,fd=8))
tcp    LISTEN0       1       *:65535                           *:*         users:(("proc",pid=17087,fd=3))
tcp    LISTEN0       128   [::]:80                           [::]:*      users:(("nginx",pid=26238,fd=7),("nginx",pid=2812,fd=7))
tcp    LISTEN0       128   [::]:3000                           [::]:*      users:(("PM2                                              v4.5.1:       God",pid=27339,fd=20))
tcp    LISTEN0       128   [::]:443                            [::]:*      users:(("nginx",pid=26238,fd=9),("nginx",pid=2812,fd=9))nc 多功能网络工具

1、简介
nc 是一个多功能、可靠、强大的网络工具,可以建立TCP连接,发送UDP数据包,监听端口,处理IPv4和IPv6数据包
如果系统没有nc命令,可以通过一下命令手动安装
yum -y install nc2、语法格式
nc [参数选项]3、参数说明
参数参数说明-l指定监听端口,然后一直等待网络连接-z表示zero,表示扫描时不发送任何数据-v显示详细输出4、实践操作
①TCP端口扫描
# nc -v -z -w2 192.168.0.3 1-100
192.168.0.3: inverse host lookup failed: Unknown host
(UNKNOWN) 80 (http) open
(UNKNOWN) 23 (telnet) open
(UNKNOWN) 22 (ssh) open②扫描指定端口
# nc -nvv 192.168.0.1 80 //扫描 80端口
(UNKNOWN) 80 (?) open
y//用户输入mail 发送和接收文件

1、简介
mail命令是命令行的电子邮件接收和发送工具
2、语法格式
mail [参数选项]3、参数说明
参数参数说明-s指定邮件主题-a发送邮件附件,多个附件使用多次-a选项即可nslookup 域名查询工具

1、简介
nslookup 命令是常用的域名查询工具
如果系统没有该命令,需要按照以下方式自己安装下
yum -y install bind-utils2、语法格式
nslookup [参数选项] [域名/IP] 3、参数说明
参数参数说明server指定解析域名的服务器地址set 关键字=值设置查询关键字(域名属性的值)
all(全部) 查询域名有关的所有信息
domain=name 指定查询域名
port=端口号 指定域名服务器使用的端口号
type=类型名 指定域名查询类型
retry=指定查询时重试册数
timeout= 秒数 指定查询的超时时间dig 域名查询工具

1、简介
dig 是常用的域名查询工具,可以用于测试域名系统的工作是否正常
2、语法格式
dig [参数选项]3、参数说明
参数参数说明@指定进行域名解析的域名服务器-t指定要查询的DNS数据类型,如A、MX和PTR+trace从跟域开始跟踪查询结果4、实践操作
① 查询指定域名的IP地址
# dig www.xiezhrspace.cn;DiG 9.11.4-P2-RedHat-9.11.4-16.P2.el7_8.6www.xiezhrspace.cn;; global options: +cmd;; Got answer:;; ->>HEADERHEADERHEADER
页: [1]
查看完整版本: 快速上手Linux核心命令(八):网络相关命令