Linux nc 命令
nc命令的含義

nc 命令的完整拼寫是 netcat。它只有25KB,是一個簡單可靠的網絡工具,可以通過TCP或UDP協議傳輸讀寫數據;同時,它還是一個網絡應用的Debug分析器,可以根據需要創建各種不同類型的網絡連接
安裝方式
ubuntu
Ubuntu上默認安裝的是netcat-openbsd,而不是經典的netcat-traditional. 因此,我們要想使用netcat-traditional則需要自己進行安裝與配置。然后將nc替換為第2個traditional模式
sudo apt-get -y install netcat-traditional sudo update-alternatives --config nc
1
2
使用 type -a nc 命令查看它在環境變量中的位置
centos
centos上的安裝就簡單多了,直接 sudo yum install -y nc 即可
常用參數
可以使用 man nc 或 nc -h 來查看幫助文檔
g 設置路由器躍程通信網關,最多可設置8個
G 設置來源路由指向器,其數值為4的倍數
h 在線幫助
i 設置時間間隔,單位秒,以便傳送信息及掃描通信端口
k 保持連接存活
l 將nc設置為偵聽模式。指定該參數,則意味著nc被當作server,偵聽并接受連接,而非向其它地址發起連接
n 直接使用IP地址,而不通過域名服務器
o 指定輸出文件的名稱,把往來傳輸的數據以16進制字碼傾倒成該文件保存
p 設置本地主機使用的通信端口
r 亂數指定本地與遠端主機的通信端口
s 指定發送數據的源IP地址,適用于多網卡機
u 指定nc使用UDP協議,默認為TCP
v 輸出交互或出錯信息,新手調試時尤為有用
w 超時秒數,后面跟數字
z 使用0輸入/輸出模式,只在掃描通信端口時使用
作用
實現任意TCP/UDP端口的偵聽,nc可以作為server以TCP或UDP方式偵聽指定端口
若該端口未打開,則使用 nc -lkp
若端口為開啟,則會提示連接拒絕
端口的掃描,nc可以作為client發起TCP或UDP連接
可以掃描指定端口,或一個端口范圍 nc -v -z -w2
機器之間傳輸文件
首先,在A機上監聽指定端口,并將該端口得到的數據重定向到文件
nc -lp 9999 > test.txt
然后,在B機上向該端口寫入文件
唯一的缺點是沒有進度顯示,因此你并不能準確的知道是否已經完成。
機器之間網絡測速
步驟1,A機器先啟動接收數據的命令,監聽自己的9999端口,把來自這個端口的數據都輸出給空設備(這樣不寫磁盤,測試網速更準確)
nc -l 9999 >/dev/null
步驟2,B機器發送數據,把無限個0發送給A機器的9999端口
最后,在A機器上,使用dstat命令查看當前網速,dstat命令比較直觀,它可以查看當前cpu,磁盤,網絡,內存頁和系統的一些當前狀態指標。我們只需要看下面我選中的這2列即可, recv是receive的縮寫,表示接收的意思,send是發送數據,另外注意數字后面的單位B,KB,MB
Linux TCP/IP
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。