Linux環(huán)境下排除網(wǎng)絡(luò)故障常用命令

1. 網(wǎng)絡(luò)模型回顧

先來回顧一下OSI和TCP/IP網(wǎng)絡(luò)模型湾蔓,TCP/IP網(wǎng)絡(luò)模型更符合現(xiàn)實(shí)中的網(wǎng)絡(luò)。TCP/IP網(wǎng)絡(luò)模型依次為:

  • 第五層:應(yīng)用層(Application)
  • 第四層:傳輸層(Transport)
  • 第三層:網(wǎng)絡(luò)層(Network/Internet)
  • 第二層:數(shù)據(jù)鏈路層(Data Link)
  • 第一層:物理層(Physical)

下面我們依次來看看在各層璧尸,有什么方法可以檢測(cè)網(wǎng)絡(luò)故障迫横。

TCPIP_OSI_0.png

2. 物理層

2.1 查看網(wǎng)卡狀態(tài)

# ip link show 

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 08:00:27:0c:b9:17 brd ff:ff:ff:ff:ff:ff

2.2 簡化輸出信息

# ip -br link show

lo               UNKNOWN        00:00:00:00:00:00 <LOOPBACK,UP,LOWER_UP> 
enp0s3           UP             08:00:27:0c:b9:17 <BROADCAST,MULTICAST,UP,LOWER_UP> 

2.3 啟用/禁用網(wǎng)卡

# ip link set enp0s3 up/down

2.4 打印網(wǎng)卡的統(tǒng)計(jì)信息,查看是否有丟包情況

# ip -s link show enp0s3

2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 08:00:27:0c:b9:17 brd ff:ff:ff:ff:ff:ff
    RX: bytes  packets  errors  dropped overrun mcast   
    13546687   9535     0       0       0       22      
    TX: bytes  packets  errors  dropped carrier collsns 
    625270     7339     0       0       0       0

2.5 檢測(cè)網(wǎng)卡速率是否正確配置

# ethtool enp0s3

Settings for enp0s3:
    Supported ports: [ TP ]
    Supported link modes:   10baseT/Half 10baseT/Full 
                            100baseT/Half 100baseT/Full 
                            1000baseT/Full 
    Supported pause frame use: No
    Supports auto-negotiation: Yes
    Supported FEC modes: Not reported
    Advertised link modes:  10baseT/Half 10baseT/Full 
                            100baseT/Half 100baseT/Full 
                            1000baseT/Full 
    Advertised pause frame use: No
    Advertised auto-negotiation: Yes
    Advertised FEC modes: Not reported
    Speed: 1000Mb/s
    Duplex: Full
    Port: Twisted Pair
    PHYAD: 0
    Transceiver: internal
    Auto-negotiation: on
    MDI-X: off (auto)
Cannot get wake-on-lan settings: Operation not permitted
    Current message level: 0x00000007 (7)
                   drv probe link
    Link detected: yes

3. 數(shù)據(jù)鏈路層

ARP(Address Resolution Protocol)在數(shù)據(jù)鏈路層工作珍语,用于三層IP地址到二層MAC地址的映射忍捡。

3.1 查看本地ARP表

# ip neighbor show

192.168.1.109 dev enp0s3 lladdr 20:54:fa:c4:66:2b STALE
192.168.1.1 dev enp0s3 lladdr d4:ee:07:45:a7:1a STALE
192.168.1.232 dev enp0s3 lladdr 9c:5c:8e:78:85:76 REACHABLE

3.2 修改本地ARP表

ARP表會(huì)在本地緩存一段時(shí)間集漾,緩存到期,ARP會(huì)重新發(fā)現(xiàn)建立新的ARP表砸脊。

在一些極端情況具篇,比如Keepalived的虛擬IP地址漂移,需要讓緩存立即失效凌埂,重新建立虛擬IP到新MAC地址的映射驱显。這時(shí)可以刪除ARP表中的映射項(xiàng),ARP會(huì)立即開始重建。

# ip neighbor delete 192.168.1.1 dev enp0s3

4. 網(wǎng)絡(luò)層

IP協(xié)議和ICMP協(xié)議(Internet Control Message Protocol)工作在這一層埃疫。

4.1 查看IP地址

# ip -br address show

lo               UNKNOWN        127.0.0.1/8 ::1/128 
enp0s3           UP             192.168.1.175/24 fe80::a00:27ff:fe0c:b917/64

4.2 檢測(cè)網(wǎng)絡(luò)聯(lián)通

# ping -c 3 www.baidu.com 

PING www.a.shifen.com (180.101.49.12) 56(84) bytes of data.
64 bytes from 180.101.49.12 (180.101.49.12): icmp_seq=1 ttl=48 time=8.02 ms
64 bytes from 180.101.49.12 (180.101.49.12): icmp_seq=2 ttl=48 time=8.08 ms
64 bytes from 180.101.49.12 (180.101.49.12): icmp_seq=3 ttl=48 time=8.06 ms

--- www.a.shifen.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 8.024/8.056/8.082/0.077 ms

4.3 利用TTL查詢網(wǎng)絡(luò)路徑

# windows 用 tracert
# tracert www.baidu.com

通過最多 30 個(gè)躍點(diǎn)跟蹤
到 www.a.shifen.com [112.80.248.75] 的路由:

  1    <1 毫秒   <1 毫秒   <1 毫秒 Hiwifi.lan [192.168.1.1]
  2     2 ms     1 ms     1 ms  100.64.224.1
  3     2 ms     1 ms     2 ms  139.226.230.113
  4     2 ms     2 ms     2 ms  139.226.210.97
  5    18 ms     4 ms     4 ms  219.158.11.2
  6    11 ms    11 ms    11 ms  221.6.1.250
  7     7 ms     9 ms     7 ms  112.86.192.154
  8     *        *        *     請(qǐng)求超時(shí)伏恐。
  9     9 ms     8 ms     8 ms  112.80.248.75

跟蹤完成。

# linux 最好加上 -I
# traceroute -I www.baidu.com

traceroute to www.baidu.com (180.101.49.12), 30 hops max, 60 byte packets
 1  * * *
 2  * * *
 3  * * *
 4  * * *
 5  * * *
 6  * * *
 7  * * *
 8  * * *
 9  * * *
10  * * *
11  * * *
12  * * *
13  * * *
14  * * *
15  * * *
16  * * *
17  180.101.49.12 (180.101.49.12)  8.110 ms  8.157 ms  8.158 ms

4.4 查看IP路由表

# ip route show

default via 192.168.1.1 dev enp0s3 proto static 
192.168.1.0/24 dev enp0s3 proto kernel scope link src 192.168.1.175 

4.5 檢測(cè)DNS

# nslook www.google.com

Server:     127.0.0.53
Address:    127.0.0.53#53

Non-authoritative answer:
Name:   www.google.com
Address: 31.13.83.16

5. 傳輸層

TCP協(xié)議和UDP協(xié)議工作在這一層栓霜。

5.1 查看本地連接

# ss -tunlp4

Netid  State    Recv-Q   Send-Q       Local Address:Port       Peer Address:Port   
udp    UNCONN   0        0            127.0.0.53%lo:53              0.0.0.0:*      
tcp    LISTEN   0        128          127.0.0.53%lo:53              0.0.0.0:*      
tcp    LISTEN   0        128                0.0.0.0:22              0.0.0.0:*      
tcp    LISTEN   0        128              127.0.0.1:6010            0.0.0.0:*  

ss命令可以傳遞的參數(shù):

  • -t - 顯示TCP端口
  • -u - 顯示UDP端口
  • -n - 不解析主機(jī)名
  • -l - 顯示監(jiān)聽端口
  • -p - 顯示進(jìn)程
  • -4 - 僅顯示IPv4的socket連接

5.2 測(cè)試TCP連接

# telnet 192.168.1.100 3306

5.3 測(cè)試UDP連接

# nc 192.168.122.1 -u 80
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末翠桦,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子胳蛮,更是在濱河造成了極大的恐慌销凑,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,383評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件仅炊,死亡現(xiàn)場離奇詭異斗幼,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)抚垄,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,522評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門蜕窿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人呆馁,你說我怎么就攤上這事桐经。” “怎么了智哀?”我有些...
    開封第一講書人閱讀 157,852評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵次询,是天一觀的道長荧恍。 經(jīng)常有香客問我瓷叫,道長,這世上最難降的妖魔是什么送巡? 我笑而不...
    開封第一講書人閱讀 56,621評(píng)論 1 284
  • 正文 為了忘掉前任摹菠,我火速辦了婚禮,結(jié)果婚禮上骗爆,老公的妹妹穿的比我還像新娘次氨。我一直安慰自己,他們只是感情好摘投,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,741評(píng)論 6 386
  • 文/花漫 我一把揭開白布煮寡。 她就那樣靜靜地躺著,像睡著了一般犀呼。 火紅的嫁衣襯著肌膚如雪幸撕。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,929評(píng)論 1 290
  • 那天外臂,我揣著相機(jī)與錄音坐儿,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛貌矿,可吹牛的內(nèi)容都是我干的炭菌。 我是一名探鬼主播,決...
    沈念sama閱讀 39,076評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼逛漫,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼黑低!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起尽楔,我...
    開封第一講書人閱讀 37,803評(píng)論 0 268
  • 序言:老撾萬榮一對(duì)情侶失蹤投储,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后阔馋,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體玛荞,經(jīng)...
    沈念sama閱讀 44,265評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,582評(píng)論 2 327
  • 正文 我和宋清朗相戀三年呕寝,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了勋眯。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,716評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡下梢,死狀恐怖客蹋,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情孽江,我是刑警寧澤讶坯,帶...
    沈念sama閱讀 34,395評(píng)論 4 333
  • 正文 年R本政府宣布,位于F島的核電站岗屏,受9級(jí)特大地震影響辆琅,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜这刷,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,039評(píng)論 3 316
  • 文/蒙蒙 一婉烟、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧暇屋,春花似錦似袁、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,798評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至定鸟,卻和暖如春而涉,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背仔粥。 一陣腳步聲響...
    開封第一講書人閱讀 32,027評(píng)論 1 266
  • 我被黑心中介騙來泰國打工婴谱, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蟹但,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,488評(píng)論 2 361
  • 正文 我出身青樓谭羔,卻偏偏與公主長得像华糖,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子瘟裸,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,612評(píng)論 2 350