Linux 網絡和端口命令


一、查看網口IP等

顯示或配置網絡設備(網絡接口卡)命令

sudo ifconfig

網口及ip信息

sudo ip link

網口信息

sudo ip addr

掃描端口是否開啟服務,如下掃描 1至1000端口

nc -v -z -w2 [IP] 1-1000

1) -l

用於指定nc將處於偵聽模式。指定該參數,則意味着nc被當作server,偵聽並接受連接,而非向其它地址發起連接。

2) -p <port>

暫未用到(老版本的nc可能需要在端口號前加-p參數,下面測試環境是centos6.6,nc版本是nc-1.84,未用到-p參數)

3) -s 

指定發送數據的源IP地址,適用於多網卡機 

4) -u

 指定nc使用UDP協議,默認為TCP

5) -v

輸出交互或出錯信息,新手調試時尤為有用

6)-w

超時秒數,后面跟數字 

7)-z

表示zero,表示掃描時不發送任何數據

測試服務是否聯通

telnet [IP] [PORT]

 Linux下查看網關方法 

1. route -n
2. ip route show
3. netstat -r

二、Linux服務器查看外網IP

1. curl ifconfig.me
2. curl cip.cc
3. curl icanhazip.com
4. curl ident.me
5. curl ipecho.net/plain
6. curl whatismyip.akamai.com
7. curl tnx.nl/ip
8. curl myip.dnsomatic.com
9. curl ip.appspot.com
10. curl -s checkip.dyndns.org | sed 's/.*IP Address: \([0-9\.]*\).*/\1/g'

三、Ubuntu查看端口使用情況,使用netstat命令 

# 查看已經連接的服務端口(ESTABLISHED)
$ netstat -a

# 查看所有的服務端口(LISTEN,ESTABLISHED)
$ netstat -apn
$ netstat -apn | grep 8080
-a或--all:顯示所有連線中的Socket; -A<網絡類型>或--<網絡類型>:列出該網絡類型連線中的相關地址; -c或--continuous:持續列出網絡狀態; -C或--cache:顯示路由器配置的快取信息; -e或--extend:顯示網絡其他相關信息; -F或--fib:顯示FIB; -g或--groups:顯示多重廣播功能群組組員名單; -h或--help:在線幫助; -i或--interfaces:顯示網絡界面信息表單; -l或--listening:顯示監控中的服務器的Socket; -M或--masquerade:顯示偽裝的網絡連線; -n或--numeric:直接使用ip地址,而不通過域名服務器; -N或--netlink或--symbolic:顯示網絡硬件外圍設備的符號連接名稱; -o或--timers:顯示計時器; -p或--programs:顯示正在使用Socket的程序識別碼和程序名稱; -r或--route:顯示Routing Table; -s或--statistice:顯示網絡工作信息統計表; -t或--tcp:顯示TCP傳輸協議的連線狀況; -u或--udp:顯示UDP傳輸協議的連線狀況; -v或--verbose:顯示指令執行過程; -V或--version:顯示版本信息; -w或--raw:顯示RAW傳輸協議的連線狀況; -x或--unix:此參數的效果和指定"-A unix"參數相同; --ip或--inet:此參數的效果和指定"-A inet"參數相同。

查看指定端口,可以結合grep命令, 也可以使用lsof命令:

lsof輸出信息 即可顯示系統打開的文件默認顯示所有進程打開的所有文件

lsof -i:8888

lsof filename 顯示打開指定文件的所有進程
lsof -c string 顯示command列中包含指定字符的進程所有打開的文件
lsof -u username 顯示所屬user進程打開的文件
lsof -g gid 顯示歸屬gid的進程情況
lsof -i 顯示符合條件的進程情況
lsof -d 顯示指定文件描述符的進程
lsof -a 標示兩個參數都必須滿足時才顯示結果

【lsof使用實例】

查看所屬root用戶進程所打開的文件類型為txt的文件:

lsof -a -u root -d txt

1.查找使用文件系統

卸載文件系統時,如果文件系統中有任何打開的文件,就會出錯。可以通過 lsof 可以找出正在使用當前卸載文件系統的進程。

$ lsof /GTES11/
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
bash 4208 root cwd DIR 3,1 40962 /GTES11/
vim 4230 root cwd DIR 3,1 40962 /GTES11/

2.恢復刪除的文件

進程打開某個文件,只要該進程保持打開該文件狀態,刪除文件之后依然存在於磁盤上。

在/proc目錄下,其中包含了反映內核和進程樹的各種文件,可以通過lsof從/proc目錄下恢復該文件

使用lsof來查看當前是否有進程打開/var/logmessages文件

$ lsof |grep /var/log/messages syslogd 1283 root 2w REG 3,3 5381017 1773647 /var/log/messages (deleted) 從/proc/1283/fd/2

【結束占用端口進程】

若要關閉使用這個端口的程序,使用kill + 對應的pid

kill -9 PID

ps:kill就是給某個進程id發送了一個信號。默認發送的信號是SIGTERM,而kill -9發送的信號是SIGKILL,即exit。exit信號不會被系統阻塞,所以kill -9能順利殺掉進程。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM