netstat 命令用于顯示各種網(wǎng)絡(luò)相關(guān)信息,如網(wǎng)絡(luò)連接,路由表,接口狀態(tài) (Interface Statistics),masquerade 連接,多播成員 (Multicast Memberships) 等等。
列出所有端口 (包括監(jiān)聽(tīng)和未監(jiān)聽(tīng)的)::
netstat -a
列出所有 tcp 端口::
netstat -at
列出所有有監(jiān)聽(tīng)的服務(wù)狀態(tài)::
netstat -l
使用netstat工具查詢(xún)端口::
$netstat -antp | grep 6379
tcp 0 0 127.0.0.1:6379 0.0.0.0:* LISTEN 25501/redis-server
$ps 25501
PID TTY STAT TIME COMMAND
25501 ? Ssl 28:21 ./redis-server ./redis.conf
lsof(list open files)是一個(gè)列出當(dāng)前系統(tǒng)打開(kāi)文件的工具。在linux環(huán)境下,任何事物都以文件的形式存在,通過(guò)文件不僅僅可以訪(fǎng)問(wèn)常規(guī)數(shù)據(jù),還可以訪(fǎng)問(wèn)網(wǎng)絡(luò)連接和硬件。所以如傳輸控制協(xié)議 (TCP) 和用戶(hù)數(shù)據(jù)報(bào)協(xié)議 (UDP) 套接字等; 在查詢(xún)網(wǎng)絡(luò)端口時(shí),經(jīng)常會(huì)用到這個(gè)工具。
查詢(xún)7902端口現(xiàn)在運(yùn)行什么程序::
#分為兩步
#第一步,查詢(xún)使用該端口的進(jìn)程的PID;
$lsof -i:7902
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
WSL 30294 tuapp 4u IPv4 447684086 TCP 10.6.50.37:tnos-dp (LISTEN)
#查到30294
#使用ps工具查詢(xún)進(jìn)程詳情:
$ps -fe | grep 30294
tdev5 30294 26160 0 Sep10 ? 01:10:50 tdesl -k 43476
root 22781 22698 0 00:54 pts/20 00:00:00 grep 11554
.. note::
以上介紹lsof關(guān)于網(wǎng)絡(luò)方面的應(yīng)用,這個(gè)工具非常強(qiáng)大,需要好好掌握,詳見(jiàn) :ref:`lsof` ;
查看路由狀態(tài)::
$route -n
發(fā)送ping包到地址IP::
$ping IP
探測(cè)前往地址IP的路由路徑::
$traceroute IP
DNS查詢(xún),尋找域名domain對(duì)應(yīng)的IP::
$host domain
反向DNS查詢(xún)::
$host IP
直接下載文件或者網(wǎng)頁(yè)::
wget url
常用選項(xiàng):
SSH登陸::
$ssh ID@host
ssh登陸遠(yuǎn)程服務(wù)器host,ID為用戶(hù)名。
ftp/sftp文件傳輸::
$sftp ID@host
登陸服務(wù)器host,ID為用戶(hù)名。sftp登陸后,可以使用下面的命令進(jìn)一步操作:
lftp同步文件夾(類(lèi)似rsync工具)::
lftp -u user:pass host
lftp user@host:~> mirror -n
將本地localpath指向的文件上傳到遠(yuǎn)程主機(jī)的path路徑::
$scp localpath ID@host:path
以ssh協(xié)議,遍歷下載path路徑下的整個(gè)文件系統(tǒng),到本地的localpath::
$scp -r ID@site:path localpath
netstat lsof route ping host wget sftp scp