linux下檢視那些埠正在使用的命令是什麼

2021-03-06 02:20:21 字數 3687 閱讀 4078

1樓:匿名使用者

linux網路效能之管理工具三劍客

本文是介紹管理linux系統網路效能技巧的文章,主要介紹了route、***stat、tcpdump三種網路管理測試工具的使用方法及其可實現的功能。

route

在配置網路時,要為機器指定接收資料報時該包要經過的路徑。在linux系統中,提供乙個命令route,這個命令可以為ifconfig命令配置的網絡卡設定靜態路由。這種設定工作通常在/etc/rc.

d/rc.i***1中引入,在系統引導時進行。

我們通過幾個例子來說明如何使用route命令:

route add -*** 127.0.0.0

這個命令將向路由表中新增乙個指定位址或者網路的路由。注意此時網路為a類位址,掩碼被設定為255.0.0.0,這個新新增的條目被連線到lo裝置上。

route add -*** ***.***.***.*** ***mask 255.255.255.0 dev eth0

這個命令為ip位址為***.***.***.***的主機增加乙個路由,它的網路掩碼被設定為255.255.255.0。

route del -*** ***.***.***.***

此命令將刪除***.***.***.***這個網路的路由。

使用route命令還可以很方便地對整個網路的路由資訊進行管理,其輸出結果是網路的路由表。如下所示:

[root@lee /root]#route

kernel ip routing table

destination gateway genmask flags metric ref use iface

10.10.8.224 * 255.255.255.255 uh 0 0 0 eth0

10.10.8.0 * 255.255.255.0 u 0 0 0 eth0

127.0.0.0 * 255.0.0.0 u 0 0 0 lo

default dgc8.njupt.edu 0.0.0.0 ug 0 0 0 eth0

default dgc8.njupt.edu 0.0.0.0 ug 1 0 0 eth0

[root@lee /root]#

輸出結果中各個欄位的含義是:

·destination表示路由的目標ip位址。

·gateway表示閘道器使用的主機名或者是ip位址。上面輸出的"*"表示沒有閘道器。

·genmask表示路由的網路掩碼。在把它與路由的目標位址進行比較之前,核心通過genmask和資料報的ip位址進行按位"與"操作來設定路由。

·flags是表示路由的標誌。可用的標誌及其意義是:u表示路由在啟動,h表示target是一台主機,g表示使用閘道器,r表示對動態路由進行復位設定;d表示動態安裝路由,m表示修改路由,!

表示拒絕路由。

·metric表示路由的單位開銷量。

·ref表示依賴本路由現狀的其它路由數目。

·use表示路由表條目被使用的數目。

·iface表示路由所傳送的包的目的網路。

通過檢視這些輸出資訊,我們就可以方便地管理網路的路由表了。

***stat

***stat命令是乙個監控tcp/ip網路的非常有用的工具,它可以顯示路由表、實際的網路連線以及每乙個網路介面裝置的狀態資訊。在計算機上執行***stat後,其輸出結果如下所示:

[root@lee /root]#***stat

active inter*** connections (w/o servers)

proto recv-q send-q local address foreign address state

active unix domain sockets (w/o servers)

proto ref**t flags types state i-node path

unix 5 [ ] dgram 460 /dev/log

unix 0 [ ] stream connected 173 @00000014

unix 0 [ ] dgram 662

unix 0 [ ] dgram 631

unix 0 [ ] dgram 544

unix 0 [ ] dgram 484

unix 0 [ ] dgram 470

[root@lee /root]#

從整體上看,***stat的輸出結果可以分為兩個部分:第一部分:是active inter*** connections,稱為有源tcp連線,在上面的輸出結果中,這一部分沒有內容,表示暫時還沒有tcp連線。

第二部分:是active unix domain sockets,稱為有源unix域套介面。輸出結果顯示的是unix域套介面的連線情況:

·proto顯示連線使用的協議。

·ref**t表示連線到本套介面上的程序號。

·types顯示套介面的型別。

·state顯示套介面當前的狀態。

·path表示連線到套介面的其它程序使用的路徑名。

可以用***stat -a來檢視所有套接字的狀態,這在您除錯網路程式的時候是非常有用的。***stat -r將顯示路由表的內容,一般還要同時指定"-n"選項,這樣可以得到數字格式的位址,也可顯示預設路由器的ip位址。使用***stat -i則將顯示所有的網路介面資訊。

使用***stat還可以獲得當前的網路狀態以及網路的拓撲結構,這在實際中是非常有用的。

tcpdump

tcpdump命令用於監視tcp/ip連線並直接讀取資料鏈路層的資料報頭。您可以指定哪些資料報被監視、哪些控制要顯示格式。例如我們要監視所有ether***上來往的通訊,執行下述命令:

tcpdump -i eth0

即使是在乙個相對平靜的網路上,也有很多的通訊,所以我們可能只需要得到我們感興趣的那些資料報的資訊。在一般情況下,tcp/ip棧只為本地主機接收入站的資料報繫結同時忽略網路上的其它計算機編址(除非您使用的是一台路由器)。當執行tcpdump命令時,它會將tcp/ip棧設定為promiscuous模式。

該模式可接收所有的資料報並使其有效顯示。如果我們關心的只是我們本地主機的通訊情況,一種方法是使用「-p」引數禁止promiscuous模式,還有一種方法就是指定主機名:

tcpdump -i eth0 host hostname

此時,系統將只對名為hostname的主機的通訊資料報進行監視。主機名可以是本地主機,也可以是網路上的任何一台計算機。下面的命令可以讀取主機hostname傳送的所有資料:

tcpdump -i eth0 src host hostname

下面的命令可以監視所有送到主機hostname的資料報:

tcpdump -i eth0 dst host hostname

我們還可以監視通過指定閘道器的資料報:

tcpdump -i eth0 gateway gatewayname

如果你還想監視編址到指定埠的tcp或udp資料報,那麼執行以下命令:

tcpdump -i eth0 host hostname and port 80

該命令將顯示從每個資料報傳出的頭和來自主機hostname對埠80的編址。埠80是系統預設的http服務埠號。如果我們只需要列出送到80埠的資料報,用dst port;如果我們只希望看到返回80埠的資料報,用src port。

2樓:匿名使用者

linux的檢視路由資訊的命令: [root@ice /etc]# route -n kernel ip routing table destination

linux下怎麼檢視tomcat埠是否被占用

1 先到 baitomcat配置檔案檢視tomcat的埠是什du麼,配置zhi檔案一般是 catalina home conf server這個文dao 件,查詢 這一行專。這裡,屬埠是8080。2 使用 stat 命令檢視占用情況 stat ap grep 8080 查詢tomcat埠是否被占用 ...

linux下如何檢視log檔案,linux中怎樣檢視日誌

cat logfile grep 需要檢視的日期 date.logfile 然後慢慢分析date.logfile 即可 用grep來顯示某個日期的條目.具體命令自己查查 是什麼型別的?如果是應用程式產生的,可以用crontab自動進行日誌的輪轉,使日誌變成單個的小檔案。如apache squid的日...

linux下怎麼使SSH服務開機自動執行

linux下讓ssh服務開機自動執行,可以通過systemctl命令來設定。1 設定ssh開機自啟動。sudo systemctl enable ssh 說明 sudo是提公升許可權,systemctl是服務管理器,enable是systemctl 的引數,表示啟用開機自動執行,ssh是要設定的服務...