Linux nc命令的簡單玩法
阿新 • • 發佈:2019-01-08
nc是netcat的簡寫。nc的作用很多,可以實現網路埠監聽、網路資料傳輸等,其用法可以用命令man nc或者nc --help檢視。
本文主要介紹nc的一個簡單玩法,實現監聽一個埠,然後往這個埠寫入點資料,在監聽終端上看到寫入的資料。
開啟第一個終端監聽某個埠,例如:9999
$ nc -lk 9999
nc引數中 -l(小寫的L)表示listen -k表示keep on 持續監聽。
開啟第二個終端,給9999埠傳送一個文字或者字串:
$ echo "Hello world, hello nc" | nc localhost 9999
第一個終端輸出:
Hello world, hello nc
說明第二個終端通過nc命令將內容傳輸到了9999埠。
繼續測試:
將第二個終端命令稍加修改為如下內容,再次執行
$ echo "Hello again" | nc localhost 9999
第一個終端輸出了第二次傳輸的內容。
---------------------------------------------------------------------------------------------
通過以上介紹,nc可以實現一個終端(客戶端)向第二個終端(服務端)傳送內容,類似於單向的聊天。
可以升級以上玩法,實現雙向傳輸內容,也就是雙向聊天:
準備兩個終端:node1和node2
確保兩臺機器已經在/etc/hosts檔案映射了ip和對應的主機名
在第一個終端:node1,執行命令nc -vl 54321
[email protected]:~$ nc -vl 54321
在第二個終端:node2 ,執行命令nc -v node1 54321,如果沒有對映ip和主機名,可以將node1換成node1的ip。
[email protected]:~$ nc -v node1 54321
在node1上輸入內容後,node2能收到並顯示node1輸入的內容;
在node2上輸入內容後,node1能收到並顯示node2輸入的內容;
互相聊天效果如下:
node1:
node2:
完成! enjoy it!