快速上手Linux核心命令(八):網路相關命令

来源:https://www.cnblogs.com/xiezhr/archive/2023/04/27/17343248.html
-Advertisement-
Play Games

(網路相關命令) 前言 這期呢主要說一說Linux中與網路相關命令,一共包含19個命令 測試主機之間網路是否聯通 1、簡介 ping 命令不管是在Windows還是Linux都是比較常用的命令。命令用於測試主機之間的網路連通性 2、語法格式 ping [參數選項] [目標主機] 3、參數說明 | 參 ...


目錄

前言

這期呢主要說一說Linux中與網路相關命令,一共包含19個命令

測試主機之間網路是否聯通

1、簡介

ping 命令不管是在Windows還是Linux都是比較常用的命令。命令用於測試主機之間的網路連通性

2、語法格式

ping [參數選項] [目標主機]

3、參數說明

參數 參數說明
-c 指定報文次數,若不指定,ping命令將一直發送報文
-i 相鄰兩次發送報文的時間間隔,預設時間間隔是1s
-s 設置發送數據包大小,預設為56位元組,加上8位元組ICMP頭,共64位元組數據包

還有其他的參數,這裡就不一一列舉了。。。。

4、實踐操作

①測試與目標主機的網路連通性

# 網路正常情況
[root@xiezhr ~]# 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

# 網路不正常
[root@xiezhr ~]# 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次後自動退出
[root@xiezhr ~]# 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

③ 多參數使用情況

[root@xiezhr ~]# 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次報文
  • -i 3:每隔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、實踐操作

①顯示當前系統開啟的所有網路介面信息

[root@xiezhr ~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.17.0.4  netmask 255.255.240.0  broadcast 172.17.15.255
        inet6 fe80::5054:ff:fe19:f6d0  prefixlen 64  scopeid 0x20<link>
        ether 52:54:00:19:f6:d0  txqueuelen 1000  (Ethernet)
        RX packets 254776100  bytes 26271134342 (24.4 GiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 331164543  bytes 72224346549 (67.2 GiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 143816  bytes 10756556 (10.2 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 143816  bytes 10756556 (10.2 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
  • eth0表示第一塊網卡、第二塊為eth1,依次類推;lo表示迴環介面

②顯示指定網卡eth0信息

[root@xiezhr ~]# ifconfig eth0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.17.0.4  netmask 255.255.240.0  broadcast 172.17.15.255
        inet6 fe80::5054:ff:fe19:f6d0  prefixlen 64  scopeid 0x20<link>
        ether 52:54:00:19:f6:d0  txqueuelen 1000  (Ethernet)
        RX packets 254778009  bytes 26271295935 (24.4 GiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 331166449  bytes 72224671528 (67.2 GiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

③ 啟動關閉網卡

# 關閉網卡
[root@xiezhr ~]# ifconfig eth0 down
# 啟動網卡
[root@xiezhr ~]# ifconfig eth0 up

④ 設置網卡IP

[root@xiezhr ~] 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 指定有哪個網路設備出去,後面接網路設備名 如:eth0

5、實踐操作

① 查看當前系統路由表信息

[root@xiezhr ~]# 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
[root@xiezhr ~]# route del default
# 刪除預設網關方法2
[root@xiezhr ~]# route del default gw 10.0.0.2
# 添加網關
[root@xiezhr ~]# route add default gw 10.0.0.2 dev eth0

netstat 查看網路狀況

1、簡介

netstat 命令用於顯示本機網路的連接狀態、運行埠和路由表等信息

2、語法格式

netstat [參數選項]

3、參數說明

參數 參數說明
-n 顯示數字形式的地址而不是去解析主機、埠或用戶名
-a 顯示處於監聽狀態和非監聽狀態的socket信息
-c<秒數> 後面跟的秒數表示每隔幾秒就刷新顯示一次
-t 顯示所有的TCP連接情況
-u 顯示所有的UDP連接情況
-p 顯示socket所屬進程的PID和名稱

4、實踐操作

① 顯示詳細的所有連接信息

[root@xiezhr ~]# 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
unix  2      [ ACC ]     STREAM     LISTENING     12804    /var/run/lsm/ipc/simc
unix  2      [ ACC ]     STREAM     LISTENING     12810    /var/run/lsm/ipc/sim

簡單說明下上面顯示內容的含義

列數 名稱 含義
第一列 Proto socket使用的協議(TCP/UDP/RAW)
第二列 Recv-Q 接收到但是還未處理的位元組數
第三列 Send-Q 已經發送但是未被遠程主機確認收到的位元組數
第四列 Local Address 本機主機地址和埠
第五列 Froeign Address 遠程主機地址和埠
第六列 State tcp狀態

② 顯示所有TCP、UDP正在監聽的連接信息

[root@xiezhr ~]# 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 

③ 顯示當前系統的路由表

[root@xiezhr ~]# netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt 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

④ 顯示網路的介面狀況

[root@xiezhr ~]# 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 LRU

telnet 遠程登錄主機

1、簡介

telnet以前用於遠程登錄主機,但是其安全性不好。因此現在一般採用更加安全的SSH,這個後面也會說到。

現在telnet命令主要用於判斷遠端伺服器埠是否開發

2、語法格式

telnet [參數選項] [主機名或IP] [埠]

3、實際操作

①測試埠是否開放

[root@xiezhr ~]# telnet 112.112.17.172 31189

ssh 安全的遠程登錄主機

1、簡介

ssh命令用於安全的登錄遠程伺服器,實現對伺服器的遠程管理。取代了telnet命令

2、語法格式

ssh [參數選項] [用戶名@] [主機名或IP地址] [遠程執行的名]

3、參數說明

參數 參數說明
-p 指定ssh登錄埠,如果忽略則預設為22埠
-t 強制分配偽終端,可以在遠程機器上執行任何全屏幕程式。
-v 調試模式

4、實踐操作

① 遠程登錄伺服器

[root@xiezhr ~]# ssh 220.165.5.45

②遠程執行命令

[root@xiezhr ~]# 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下載單個文件

[root@xiezhr /]# 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) [image/png]
Saving to: ‘logo.png’

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

2022-05-30 23:08:24 (433 MB/s) - ‘logo.png’ saved [112674/112674]

②使用-O參數,指定下載文件的保存文件名

[root@xiezhr test]# 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) [image/png]
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 [112674/112674]

[root@xiezhr test]# cd /home/test/
[root@xiezhr test]# ll
total 208
-rw-r--r-- 1 root   root   112674 Nov 29  2020 logo.png

③ 限速3kb/s下載

[root@xiezhr test]# 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) [image/png]
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 [112674/112674]

④ 斷點續傳下載大文件

[root@xiezhr test]# wget -c https://mirrors.aliyun.com/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1611.iso

⑤後臺下載文件

[root@xiezhr test]# wget -b https://www.xiezhrspace.cn/medias/logo.png
Continuing in background, pid 4526.
Output will be written to ‘wget-log’.

⑥ 有些網站會根據判斷代理名稱是不是瀏覽器而拒絕你的下載請求,這時候就可以偽裝代理下載

[root@xiezhr test]# wget -b https://www.xiezhrspace.cn/medias/logo.png
Continuing in background, pid 4526.
Output will be written to ‘wget-log’.
[root@xiezhr test]# clear
[root@xiezhr test]# 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.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) [image/png]
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 [112674/112674]

⑦ 監控網站URL是否正常

# 採用靜默方式訪問網站,3秒超時,重試1次,模擬爬蟲方式進行訪問
[root@xiezhr test]# wget -q -T 3 --tries=1 --spider www.xiezhrspace.cn
# 返回0表示正常
[root@xiezhr test]# echo $?
0

ip網路配置工具

1、簡介

ip 命令用於顯示或管理Linux系統的路由、網路設備、策略路由和隧道

2、語法格式

ip [參數選項] [網路對象] [操作命令]

3、參數說明

參數 參數說明
-s 輸出更詳細的信息
-r 顯示主機時,不適用ip地址,而是使用主機的功能變數名稱
-V 顯示命令的版本信息

3、網路對象及對應操作命令

網路對象 網路對象說明 對應操作命令
link 網路設備 set:修改設備屬性、show:顯示設備屬性
address 設備的協議地址(IP地址) add:添加協議地址、del:刪除協議地址、flush:清除協議地址、show:查看協議地址
addrlabel 協議地址標簽管理 add、del、list、flush
neighbour arp或ndisc緩存表
route 路由表 add、change、relpace、delete、show、flush
rule 策略路由表 add、delete、flush、show
maddress 多播地址 show、add、delete
mroute 多播路由緩存表 show
tunnel IP隧道 add、change、delete、prl、show

4、實踐操作

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/24  via  192.168.0.254 dev eth0 # 設置192.168.4.0網段的網關為192.168.0.254,數據走eth0介面
ip route add default via  192.168.0.254  dev 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、實踐操作

① 不帶參數監聽網路

[root@xiezhr ~]# 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 [P.], 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)

② 精簡輸出信息

[root@xiezhr ~]# 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

③監聽指定網卡收到的數據包

[root@xiezhr ~]# 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 [P.], seq 2354686734:2354686930, ack 602325169, win 255, length 196

④ 監聽指定主機數據包

[root@xiezhr ~]# 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

⑤ 監聽指定埠數據包

[root@xiezhr ~]# 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 [P.], 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 [P.], 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 [P.], 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 [P.], 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 [P.], 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 [P.], 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 [P.], 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 [P.], seq 1116:1264, ack 1, win 255, length 148

nmap 網路探測工具和安全/埠掃描器

1、簡介

nmap 是一款開源的網路探測和安全審核工具。其作用是快速掃描大型網路,併發現網路上有哪些主機,主機提供哪些服務,並探測操作系統的類型及版本信息

如果系統沒有nmap命令,可通過一下命令安裝

yum -y install nmap

2、語法格式

nmap [掃描類型] [通用選項] [掃描目標]

3、參數說明

參數 參數說明
-sS TCP同步掃描
-sn 不進行埠掃描,只檢查主機正在運行
-v 顯示掃描過程中的詳細信息
-n 不進行DNS解析,加快掃描速度
-p<埠> 指定掃描埠,可以是一個單獨的埠,也可以是逗號分隔的多個埠

4、實踐操作

① 查看主機當前開放的埠

[root@xiezhr ~]# nmap 127.0.0.1 

②掃描主機的指定埠

[root@xiezhr ~]#  nmap -p 1024-65535 127.0.0.1

③掃描區域網內所有IP

[root@xiezhr ~]# nmap 10.0.0.0/24

ifup 激活網路介面

1、簡介

ifup 用於激活指定的網路介面

2、語法格式

ifup [網路介面]

3、實踐操作

激活網路介面

[root@xiezhr ~]# ifup eht0

ifdown 禁用網路介面

1、簡介

ifdown命令與上面說的ifup命令剛好作用相反,用於禁用網路介面

2、語法格式

ifdown [網路介面]

3、實踐操作

禁用網路介面

[root@xiezhr ~]# ifdown eht1

arp 管理系統的arp緩存

1、簡介

首先我們先來看看什麼是arp? arp是地址解析協議,主要功能是通過ip地址獲取物理地址(MAC地址)

arp命令用於操作本機arp緩存,可以顯示、刪除、添加指定IP地址與MAC地址對應關係

2、語法格式

arp [參數選項]

3、參數說明

參數 參數說明
-n 顯示數字IP地址
-s <主機或MAC地址> 指定主機的IP地址與MAC地址靜態映射關係
-d<主機> 從arp緩存區中刪除指定主機的arp條目

4、實踐操作

① 顯示arp緩存區的所有條目

[root@xiezhr ~]# arp
Address                  HWtype  HWaddress           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條目

[root@xiezhr ~]# arp -n 42.192.46.248
42.192.46.248 (42.192.46.248) -- no entrys

③ 靜態綁定IP地址與MAC地址

[root@xiezhr ~]#  arp -s 10.0.0.100 00:0c:29:c0:5e:df

ss 查看網路狀況

1、簡介

ss 命令用於查看網路狀態信息,包括TCP、UDP連接、埠。

如果系統沒有該命令,需要自己安裝一下

yum -y install iproute

2、語法格式

ss [參數選項] [過濾器]

3、參數說明

參數 參數說明
-n 顯示IP地址不進行DNS解析
-a 顯示所有socket連接
-l 顯示所有監聽socket
-p 顯示使用socket的進程
-t 僅顯示TCP的socket
-u 僅顯示UCP的socket

4、實踐操作

① 顯示所有的socket連接

  [root@xiezhr ~]# ss -an
Netid  State      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連接

Netid  State   Recv-Q  Send-Q  Local                               Address:Port  Peer                                                      Address:Port
udp    UNCONN  0       0       *:68                                *:*           users:(("dhclient",pid=809,fd=6))
udp    UNCONN  0       0       172.17.0.4:123                      *:*           users:(("ntpd",pid=546,fd=19))
udp    UNCONN  0       0       127.0.0.1:123                       *:*           users:(("ntpd",pid=546,fd=16))
udp    UNCONN  0       0       [fe80::5054:ff:fe19:f6d0]%eth0:123  [::]:*        users:(("ntpd",pid=546,fd=20))
udp    UNCONN  0       0       [::1]:123                           [::]:*        users:(("ntpd",pid=546,fd=17))
tcp    LISTEN  0       128     *:80                                *:*           users:(("nginx",pid=26238,fd=6),("nginx",pid=2812,fd=6))
tcp    LISTEN  0       128     *:22                                *:*           users:(("sshd",pid=980,fd=3))
tcp    LISTEN  0       128     *:443                               *:*           users:(("nginx",pid=26238,fd=8),("nginx",pid=2812,fd=8))
tcp    LISTEN  0       1       *:65535                             *:*           users:(("proc",pid=17087,fd=3))
tcp    LISTEN  0       128     [::]:80                             [::]:*        users:(("nginx",pid=26238,fd=7),("nginx",pid=2812,fd=7))
tcp    LISTEN  0       128     [::]:3000                           [::]:*        users:(("PM2                                              v4.5.1:       God",pid=27339,fd=20))
tcp    LISTEN  0       128     [::]:443                            [::]:*        users:(("nginx",pid=26238,fd=9),("nginx",pid=2812,fd=9))

nc 多功能網路工具

1、簡介

nc 是一個多功能、可靠、強大的網路工具,可以建立TCP連接,發送UDP數據包,監聽埠,處理IPv4和IPv6數據包

如果系統沒有nc命令,可以通過一下命令手動安裝

yum -y install nc

2、語法格式

nc [參數選項]

3、參數說明

參數 參數說明
-l 指定監聽埠,然後一直等待網路連接
-z 表示zero,表示掃描時不發送任何數據
-v 顯示詳細輸出

4、實踐操作

①TCP埠掃描

[root@xiezhr ]# nc -v -z -w2 192.168.0.3 1-100 
192.168.0.3: inverse host lookup failed: Unknown host
(UNKNOWN) [192.168.0.3] 80 (http) open
(UNKNOWN) [192.168.0.3] 23 (telnet) open
(UNKNOWN) [192.168.0.3] 22 (ssh) open

②掃描指定埠

[root@xiezhr ~]# nc -nvv 192.168.0.1 80 //掃描 80埠
(UNKNOWN) [192.168.0.1] 80 (?) open
y  //用戶輸入

mail 發送和接收文件

1、簡介

mail命令是命令行的電子郵件接收和發送工具

2、語法格式

mail [參數選項]

3、參數說明

參數 參數說明
-s 指定郵件主題
-a 發送郵件附件,多個附件使用多次-a選項即可

nslookup 功能變數名稱查詢工具

1、簡介

nslookup 命令是常用的功能變數名稱查詢工具

如果系統沒有該命令,需要按照以下方式自己安裝下

yum -y install bind-utils

2、語法格式

nslookup [參數選項] [功能變數名稱/IP] [DNS伺服器]

3、參數說明

參數 參數說明
server<功能變數名稱伺服器> 指定解析功能變數名稱的伺服器地址
set 關鍵字=值 設置查詢關鍵字(功能變數名稱屬性的值)
all(全部) 查詢功能變數名稱有關的所有信息
domain=name 指定查詢功能變數名稱
port=埠號 指定功能變數名稱伺服器使用的埠號
type=類型名 指定功能變數名稱查詢類型
retry=<次數>指定查詢時重試冊數
timeout= 秒數 指定查詢的超時時間

dig 功能變數名稱查詢工具

1、簡介

dig 是常用的功能變數名稱查詢工具,可以用於測試功能變數名稱系統的工作是否正常

2、語法格式

dig [參數選項]

3、參數說明

參數 參數說明
@<DNS伺服器地址> 指定進行功能變數名稱解析的功能變數名稱伺服器
-t 指定要查詢的DNS數據類型,如A、MX和PTR
+trace 從跟域開始跟蹤查詢結果

4、實踐操作

① 查詢指定功能變數名稱的IP地址

[root@xiezhr init.d]# dig www.xiezhrspace.cn

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-16.P2.el7_8.6 <<>> www.xiezhrspace.cn
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43520
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.xiezhrspace.cn.            IN      A

;; ANSWER SECTION:
www.xiezhrspace.cn.     600     IN      A       42.192.46.248

;; Query time: 76 msec
;; SERVER: 183.60.82.98#53(183.60.82.98)
;; WHEN: Fri Jun 03 09:28:46 CST 2022
;; MSG SIZE  rcvd: 52

② 查詢MX類型的功能變數名稱信息

[root@xiezhr init.d]# dig -t MX www.xiezhrspce.cn

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-16.P2.el7_8.6 <<>> -t MX www.xiezhrspce.cn
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 62926
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;www.xiezhrspce.cn.             IN      MX

;; AUTHORITY SECTION:
cn.                     594     IN      SOA     a.dns.cn. root.cnnic.cn. 2029763095 7200 3600 2419200 21600

;; Query time: 76 msec
;; SERVER: 183.60.82.98#53(183.60.82.98)
;; WHEN: Fri Jun 03 09:29:54 CST 2022
;; MSG SIZE  rcvd: 88

③ 顯示完整DNS解析過程

[root@xiezhr init.d]# dig @223.5.5.5 www.xiezhrspace.cn +trace

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-16.P2.el7_8.6 <<>> @223.5.5.5 www.xiezhrspace.cn +trace
; (1 server found)
;; global options: +cmd
.                       3323    IN      NS      k.root-servers.net.
.                       3323    IN      NS      g.root-servers.net.
.                       3323    IN      NS      m.root-servers.net.
.                       3323    IN      NS      f.root-servers.net.
.                       3323    IN      NS      c.root-servers.net.
.                       3323    IN      NS      e.root-servers.net.
.                       3323    IN      NS      d.root-servers.net.
.                       3323    IN      NS      l.root-servers.net.
.                       3323    IN      NS      i.root-servers.net.
...

host 功能變數名稱查詢工具

1、簡介

host 命令用於查詢DNS工具,可以將指定主機名轉換為IP地址

2、語法格式

host [參數選項]

3、參數說明

參數 參數說明
-a 顯示詳細的DNS信息
-t 指定查詢的功能變數名稱信息類型,可以是“A”、”ALL“、”MX“、”NS“

4、實踐操作

① DNS查詢

[root@xiezhr init.d]# host www.xiezhrspace.cn
www.xiezhrspace.cn has address 42.192.46.248

② 查詢詳細信息

[root@xiezhr init.d]# host -a www.xiezhrspace.cn
Trying "www.xiezhrspace.cn"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41474
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.xiezhrspace.cn.            IN      ANY

;; ANSWER SECTION:
www.xiezhrspace.cn.     600     IN      A       42.192.46.248

Received 52 bytes from 183.60.82.98#53 in 65 ms

這期主要是說了Linux系統網路相關命令,大概內容就這些了。下期根據思維導圖就到了文件備份與壓縮相關的命令了。這些命令呢比較基礎,但也是比較重要的

涉及到的命令有: tar、gzip、zip、unzip、scp、rsync等等

敬請期待哦(●’◡’●)

專欄目錄:快速上手Linux核心命令專欄目錄

上一篇:快速上手Linux核心命令(七):Linux系統信息相關命令x
下一篇:快速上手Linux核心命令(九):文件備份與壓縮命令(博主正在玩命更新中)


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • #include <stdlib.h> int main() { // 定義要打開的URL char* url = "https://rjku.gitee.io/"; // 調用系統命令以預設瀏覽器打開URL char command[100]; sprintf(command, "open %s" ...
  • 最近組件庫更新比較頻繁,有些同學感覺有點迷茫,就著今天剛上了張老闆一節課立馬擼個新的上手教程回饋社區, ;-> 1.新建工程b18QuickStartv757,將項目添加到解決方案中 dotnet new blazorserver -o b18QuickStartv757 dotnet sln ad ...
  • 大家好,我是沙漠盡頭的狼。 上文介紹了《C#使用CefSharp內嵌網頁-並給出C#與JS的交互示例》,本文介紹CefSharp的緩存實現,先來說說添加緩存的好處: 提高頁面載入加速:CefSharp緩存可以緩存已經載入過的頁面和資源,當用戶再次訪問相同的頁面時,可以直接從緩存中載入,而不需要重新下 ...
  • 前言 一行業務代碼還沒寫,框架代碼一大堆,不利於學習。 常看到java的學習資料或博客,標題一般為《SpringBoot 整合 XXX》,所以仿照著寫了《.NET 6 整合 Autofac 依賴註入容器》這樣一個標題。 以下是我自己的用法,可能不是最佳實踐。 一. 引用包 NuGet搜索並安裝: A ...
  • 本文同時討論了IComparable和IComparer介面,原因有兩點。這兩個介面經常一起使用。雖然介面類似且名稱相似,但它們卻有不同的用途。 ...
  • 一:背景 1. 講故事 在給各位朋友免費分析 .NET程式 各種故障的同時,往往也會收到各種其他類型的dump,比如:Windows 崩潰,C++ 崩潰,Mono 崩潰,真的是啥都有,由於基礎知識的相對缺乏,分析起來並不是那麼的順利,今天就聊一個 Windows 崩潰的內核dump 吧,這個 dum ...
  • 一般方法 System.Windows.Forms.Screen類 // 獲取當前主屏幕解析度 int screenWidth = Screen.PrimaryScreen.Bounds.Width; int screenHeight = Screen.PrimaryScreen.Bounds.He ...
  • 本文演示通過PowerShell+Docker Desktop for Windows 一鍵部署Sitecore10.3(即Sitecore最新版)Docker開發/測試/演示 環境。 官方參考 SitecoreXP 10.3.0 Developer Workstation Deployment W ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...