『壹』 如何在linux下用c語言編寫一個能夠發送icmp報文的小程序
需要建立來socket,參數是AF_INET,SOCK_RAW,IPPROTO_ICMP
自己構自造ICMP數據包,sendto發送給某地址。
ICMP有多種,你可以發送type為13的時間戳請求。
然後調用recvfrom會收到type為14的timestampreply的IP包,
IP頭一般是20Bytes,裡麵包含srcIP,desIP還有TTL等。
IP包的數據就是返回ICMPtimestampreply報文,裡面有origTimestamp,recvTimestamp,transStamp,可以計算出時間。
可以參考網頁鏈接網頁鏈接
覺得有幫助可以注冊帳號,給他點個「星」
『貳』 linux網路編程是個什麼樣的東西
Linux 網路編程是一個基於客戶端/伺服器(即:client/server)的套接字編程結構(即:socket 編程)。版
在Linux網路編程的過程中權,使用到的協議主要有:TCP/IP(基於連接的協議)、UDP(基於無連接的協議)、ICMP(通常我們在 DOS 狀態下通過使用 ping 命令,檢查網路的通斷,就是依靠該協議)。
在Linux系統的套接字編程中,有標準的 socket( )、client( ) 代碼的編寫風格。涉及到的主要庫函數有:bind( )、listen( )、accept( )、read( )、write( ) 等。
至於說要想學習詳細的Linux網路編程技術實現細節,你可以參考《TCP/IP詳解》一書。一套共三本。
『叄』 linux的ping命令怎麼用
用來檢查網路是否連通,ping命令後面可以寫ip或網址,如:ping 192.168.1.100,還有一些常用回的參數,如:ping -c 5 192.168.1.100 代表答ping 5次,ping -s 1024 192.168.1.100 代表每次發送1k的數據包,ping -i 5 192.168.1.100 代表每次ping的時間間隔為5秒。
有關全套的linux的命令黑馬程序員的社區當中都有全套的文章介紹啊,學習操作的話,我的方法是邊看視頻邊實操。黑馬就有一個很好的點,他們的課程都含有配套資料,內涵有筆記+課件+源碼。或者你可以看看他們的軟體測試相關的基礎班課程大綱,基礎班可以線下去上課,也是免費的。