一、netstat概述
netstat是一款非常常見的用於查看網路連接狀態的命令行工具,它可以顯示各種網路相關信息,包括路由表、網路介面狀態、連接狀態等等。在Linux系統中,netstat是一個非常常用的命令之一。
二、使用netstat查看TCP連接狀態
1. 查看所有TCP連接狀態
$ netstat -nat
上面的命令中,-n表示不域名解析,-a表示顯示所有連接狀態,-t表示只顯示TCP連接狀態。
輸出結果包括本地地址、遠程地址、狀態等信息,如下所示:
Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN tcp 0 448 10.10.10.10:22 123.123.123.123:12345 ESTABLISHED tcp6 0 0 :::80 :::* LISTEN
2. 查看指定埠的TCP連接狀態
$ netstat -nat | grep 'LISTEN\|ESTABLISHED' | grep ':80'
上面的命令表示查看所有80埠的TCP連接狀態。
三、使用netstat查看UDP連接狀態
1. 查看所有UDP連接狀態
$ netstat -nau
上面的命令中,-n表示不域名解析,-a表示顯示所有連接狀態,-u表示只顯示UDP連接狀態。
輸出結果包括本地地址、遠程地址、狀態等信息,如下所示:
Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State udp 0 0 0.0.0.0:68 0.0.0.0:* udp 0 0 0.0.0.0:123 0.0.0.0:* udp 0 0 10.10.10.10:123 0.0.0.0:* udp6 0 0 :::123 :::*
2. 查看指定埠的UDP連接狀態
$ netstat -nau | grep ':53\s'
上面的命令表示查看所有53埠的UDP連接狀態。
四、使用netstat查看路由表
1. 查看IP路由表
$ netstat -rn
輸出結果包括目標地址、網關、掩碼、介面名等信息,如下所示:
Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 0.0.0.0 10.10.10.1 0.0.0.0 UG 0 0 0 eth0 10.10.10.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
2. 查看介面狀態
$ netstat -i
輸出結果包括介面名、MTU、MAC地址、IP地址等信息,如下所示:
Kernel Interface table Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 0 1547 0 0 0 396 0 1058 0 BMRU lo 16436 0 1643 0 0 0 1643 0 0 0 LRU
五、總結
netstat是一款非常強大的網路調試工具,在Linux運維中經常被用來查看TCP和UDP連接狀態以及路由表等信息。通過本篇文章的介紹,相信大家對netstat的使用已經有了一定的掌握。當然,除了本文介紹的內容以外,netstat還有很多其他的用法,感興趣的同學可以繼續深入了解。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/298212.html