云服務(wù)器或本地計(jì)算機(jī)如何檢測(cè)端口監(jiān)聽(tīng)情況?其實(shí)非常簡(jiǎn)單。
不管是服務(wù)器安裝的是Linux還是windows系統(tǒng),netstat命令都可以使用。
以下舉例Linux和windows系統(tǒng)如何檢測(cè)端口使用情況
Linux云服務(wù)器
命令 netstat -lnp 查看端口情況
命令 netstat -lnp|grep 80 可以過(guò)濾查看80端口的情況
而windows云服務(wù)器則有一點(diǎn)點(diǎn)差異:
命令 netstat -ano 查看端口情況
命令 netstat -ano|findstr 80 可以過(guò)濾查看80端口的情況
通常,我們?cè)诖罱╳eb環(huán)境時(shí),會(huì)發(fā)現(xiàn)網(wǎng)站無(wú)法訪問(wèn),在排除了網(wǎng)絡(luò)故障后,我們就得自己檢查下系統(tǒng)端口監(jiān)聽(tīng)情況了,在檢查http服務(wù)器是否在監(jiān)聽(tīng)80端口時(shí),得使用上述netstat命令,可以查到正在監(jiān)聽(tīng)端口的服務(wù)以及PID(進(jìn)程ID),根據(jù)服務(wù)名、進(jìn)程ID來(lái)進(jìn)一步確認(rèn)端口監(jiān)聽(tīng)是否正常。
這里來(lái)解釋下netstat命令的幾個(gè)參數(shù)。
Linux系統(tǒng):
-a: 查看所有的socket連接
-t: 查看所有的tcp連接
-u: 查看所有的udp連接
-n: 直接使用ip地址,不是用域名來(lái)顯示
-l: 查看正在監(jiān)聽(tīng)的端口
-p: 顯示socket所關(guān)聯(lián)的服務(wù)進(jìn)程id和服務(wù)名稱
上面的例子用到的參數(shù) -lnp,就是告訴命令要顯示ip地址、端口、和服務(wù)進(jìn)程ID。
windows系統(tǒng):
-a 顯示所有連接和監(jiān)聽(tīng)端口。
-b 顯示包含于創(chuàng)建每個(gè)連接或監(jiān)聽(tīng)端口的可執(zhí)行組件。在某些情況下已知可執(zhí)行組件
擁有多個(gè)獨(dú)立組件,并且在這些情況下包含于創(chuàng)建連接或監(jiān)聽(tīng)端口的組件序列被顯示。
這種情況下,可執(zhí)行組件名在底部的 [] 中,頂部是其調(diào)用的組件,等等,直到 TCP/IP
部分。注意此選項(xiàng)可能需要很長(zhǎng)時(shí)間,如果沒(méi)有足夠權(quán)限可能失敗。
-e 顯示以太網(wǎng)統(tǒng)計(jì)信息。此選項(xiàng)可以與 -s
選項(xiàng)組合使用。
-n 以數(shù)字形式顯示地址和端口號(hào)。
-o 顯示與每個(gè)連接相關(guān)的所屬進(jìn)程 ID 。
-p proto 顯示 proto 指定的協(xié)議的連接;proto 可以是
下列協(xié)議之一: TCP 、UDP 、TCPv6 或 UDPv6 。
如果與 -s 選項(xiàng)一起使用以顯示按協(xié)議統(tǒng)計(jì)信息,proto 可以是下列協(xié)議之一:
IP 、IPv6 、ICMP 、ICMPv6 、TCP 、TCPv6 、UDP 或 UDPv6 。
-r 顯示路由表。
-s 顯示按協(xié)議統(tǒng)計(jì)信息。默認(rèn)地,顯示 IP 、
IPv6 、ICMP 、ICMPv6 、TCP 、TCPv6 、UDP 和 UDPv6 的統(tǒng)計(jì)信息;
-p 選項(xiàng)用于指定默認(rèn)情況的子集。
-v 與 -b 選項(xiàng)一起使用時(shí)將顯示包含于
為所有可執(zhí)行組件創(chuàng)建連接或監(jiān)聽(tīng)端口的
組件。
interval 重新顯示選定統(tǒng)計(jì)信息,每次顯示之間
暫停時(shí)間間隔( 以秒計(jì)) 。按 CTRL+C 停止重新
顯示統(tǒng)計(jì)信息。如果省略,netstat 顯示當(dāng)前
配置信息( 只顯示一次)