nc(netcat)實用程式幾乎可用于所有涉及TCP或UDP的事情,它可以打開TCP連接,發送UDP資料包,監聽任意TCP和UDP埠,進行埠掃描,處理IPv4和IPv6,與telnet不同,nc可以很好地撰寫腳本,并將錯誤訊息分離為標準錯誤,而不是像telnet一樣將錯誤訊息發送至標準輸出,
語法:
nc [-hlnruz][-g<網關...>][-G<指向器數目>][-i<延遲秒數>][-o<輸出檔案>][-p<通信埠>][-s<來源位址>][-v...][-w<超時秒數>][主機名稱][通信埠...]
引數:
-g<網關> 設定路由器躍程通信網關,最丟哦可設定8個,
-G<指向器數目> 設定來源路由指向器,其數值為4的倍數,
-h 在線幫助,
-i<延遲秒數> 設定時間間隔,以便傳送資訊及掃描通信埠,
-l 使用監聽模式,管控傳入的資料,
-n 直接使用IP地址,而不通過域名服務器,
-o<輸出檔案> 指定檔案名稱,把往來傳輸的資料以16進制字碼傾倒成該檔案保存,
-p<通信埠> 設定本地主機使用的通信埠,
-r 亂數指定本地與遠端主機的通信埠,
-s<來源位址> 設定本地主機送出資料包的IP地址,
-u 使用UDP傳輸協議,
-v 顯示指令執行程序,
-w<超時秒數> 設定等待連線的時間,
-z 使用0輸入/輸出模式,只在掃描通信埠時使用,
應用實體
- 埠掃描
#掃描埠(70到80),可指定范圍,-v輸出詳細資訊,
nc -v -z host.example.com 70-80
nc -v -w 3 192.168.1.222 -z 1-1000
nc -v -w 3 192.168.0.3 -z 80-83
輸出效果:
Connection to 192.168.0.3 80 port [tcp/http] succeeded!
nc: connect to 192.168.0.3 port 81 (tcp) failed: Connection refused
- 監聽本地埠
#監聽埠1234
nc -l -p 1234
#查看監聽
netstat -tunlp | grep 1234
tcp 0 0 0.0.0.0:1234 0.0.0.0:* LISTEN 4480/nc
- 測驗udp和tcp埠
#測驗udp 埠68
nc -vuz 192.168.0.3 68
Connection to 192.168.0.3 68 port [udp/bootpc] succeeded!
測驗遠程連接
#建立從本地1234埠到xxx.domain.com的80埠連接,3秒超時
nc -p 1234 -w 3 xxx.domain.com 80
#使用UDP方式
nc -u xxx.domain.com 68
- 直接傳輸檔案
從server1拷貝檔案到server2上,
先在server2上,用nc激活監聽,server2上運行:
nc -lp 1234 > nc.log #定義輸出到nc.log
server1上運行:
nc -w 1 192.168.228.222 1234 < source.log #從source.log輸入
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/122590.html
標籤:Linux
上一篇:解決Jenkins上git時出現“ERROR: Timeout after 10 minutes”的時間超時問題
