Linux 系统应用编程——网络编程(常用命令解析)
1、telnet
????? Telnet協(xié)議是TCP/IP協(xié)議族中的一員,是Internet遠(yuǎn)程登陸服務(wù)的標(biāo)準(zhǔn)協(xié)議和主要方式。它為用戶提供了在本地計(jì)算機(jī)上完成遠(yuǎn)程主機(jī)工作的能力。在終端使用者的電腦上使用telnet程序,用它連接到服務(wù)器。終端使用者可以在telnet程序中輸入命令,這些命令會(huì)在服務(wù)器上運(yùn)行,就像直接在服務(wù)器的控制臺(tái)上輸入一樣。可以在本地就能控制服務(wù)器。
當(dāng)我們使用Telnet登錄進(jìn)入遠(yuǎn)程計(jì)算機(jī)系統(tǒng)時(shí),事實(shí)上啟動(dòng)了兩個(gè)程序:一個(gè)是Telnet客戶程序,運(yùn)行在本地主機(jī)上;另一個(gè)是Telnet服務(wù)器程序,它運(yùn)行在要登錄的遠(yuǎn)程計(jì)算機(jī)上。
本地主機(jī)上的Telnet客戶程序主要完成以下功能:
●建立與遠(yuǎn)程服務(wù)器的TCP聯(lián)接。
●從鍵盤上接收本地輸入的字符。
●將輸入的字符串變成標(biāo)準(zhǔn)格式并傳送給遠(yuǎn)程服務(wù)器。
●從遠(yuǎn)程服務(wù)器接收輸出的信息。
●將該信息顯示在本地主機(jī)屏幕上。
遠(yuǎn)程主機(jī)的“服務(wù)”程序通常被昵稱為“精靈”,它平時(shí)不聲不響地守候在遠(yuǎn)程主機(jī)上,一接到本地主機(jī)的請(qǐng)求,就會(huì)立馬活躍起來,并完成以下功能:
●通知本地主機(jī),遠(yuǎn)程主機(jī)已經(jīng)準(zhǔn)備好了。
●等候本地主機(jī)輸入命令。
●對(duì)本地主機(jī)的命令作出反應(yīng)(如顯示目錄內(nèi)容,或執(zhí)行某個(gè)程序等)。
●把執(zhí)行命令的結(jié)果送回本地計(jì)算機(jī)顯示。
●重新等候本地主機(jī)的命令。
下面我們利用Telnet 測(cè)試我們自己所寫的TCP服務(wù)器,下面是個(gè)TCP服務(wù)器的demo,實(shí)現(xiàn)"echo” 功能。
我們可以看到主機(jī)IP地址為192.168.3.51,端口號(hào)PORT為8888,正在監(jiān)聽中,
這里我們執(zhí)行telnet命令
可以看到連接成功,下面我們可以向服務(wù)器端發(fā)送數(shù)據(jù)
這里TCP服務(wù)器實(shí)現(xiàn)的功能是 echo ,就是在客戶端輸入數(shù)據(jù),會(huì)顯示在下方,圖中可以看到效果,下面是服務(wù)器端顯示
?
2、lsof
lsof最基本的功能:
???lsof -i:(端口)查看這個(gè)端口有那些進(jìn)程在訪問,比如我們上面正在監(jiān)聽的8888端口
這里可以看到我們的TCP服務(wù)器和Telnet 都在訪問這個(gè)端口號(hào)。
?
3、netstat
Netstat 命令用于顯示各種網(wǎng)絡(luò)相關(guān)信息,如網(wǎng)絡(luò)連接,路由表,接口狀態(tài) (Interface Statistics),masquerade 連接,多播成員 (Multicast Memberships) 等等。
常見參數(shù)
-a (all)顯示所有選項(xiàng),默認(rèn)不顯示LISTEN相關(guān)
-t (tcp)僅顯示tcp相關(guān)選項(xiàng)
-u (udp)僅顯示udp相關(guān)選項(xiàng)
-n 拒絕顯示別名,能顯示數(shù)字的全部轉(zhuǎn)化成數(shù)字。
-l 僅列出有在 Listen (監(jiān)聽) 的服務(wù)狀態(tài)
-p 顯示建立相關(guān)鏈接的程序名
-r 顯示路由信息,路由表
-e 顯示擴(kuò)展信息,例如uid等
-s 按各個(gè)協(xié)議進(jìn)行統(tǒng)計(jì)
-c 每隔一個(gè)固定時(shí)間,執(zhí)行該netstat命令。
提示:LISTEN和LISTENING的狀態(tài)只有用-a或者-l 才能看到
?
1. 列出所有端口 (包括監(jiān)聽和未監(jiān)聽的)
? 列出所有端口 netstat -a
?
2. 列出所有處于監(jiān)聽狀態(tài)的 Sockets
? 只顯示監(jiān)聽端口 netstat -l
可以看到端口8888處于監(jiān)聽狀態(tài)
總結(jié)
以上是生活随笔為你收集整理的Linux 系统应用编程——网络编程(常用命令解析)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 系统关机助手
- 下一篇: java邮件系统(java邮件收发系统源