原始套接字的花花世界

2021-08-07 09:46:34 字數 893 閱讀 7924

icmp:通常去檢測乙個網路是否為通暢,例如ping乙個ip

igmp:組播中的控制報文,控制協議

int socket(af_inet,sock_raw,protocol);

處理ip資料的套接字

int socket(af_packet,sock_raw,protocol);

處理乙太網資料報的套接字

ssize_t sendto(int sockfd,const void *buf,size_t len,int flags,const struct sockaddr *dest_addr,socklen_t addrlen);

哪幾種情況核心會將接受到的ip資料報文傳遞給原始套接字:

1、接收到的tcp和udp絕不傳遞到任何套接字

2、icmp分組會在核心處理完其中的icmp訊息之後傳遞到原始套接字

3、igmp分組同上

4、核心不認識其協議欄位的ip資料報

花花世界,色彩情結

看見 顏色的故事 這本書的簡介的時候,我就充滿了興趣,毫不猶豫加入這趟旅程。維多利亞追溯著顏色的起源,憑藉著對顏色自小而生的狂熱愛好,走過全球各個地方。這樣苦行僧一般的體驗,如果不是內心深刻的信仰,還有追求過程中顏色所帶來的啟示,普通人是不可能做到這一點的吧。讀一本書下來,寫感受,我不想談這本書的綱...

原始套接字

資料出處 實際上,我們常用的網路程式設計都是在應用層的報文的收發操作,也就是大多數程式設計師接觸到的流式套接字 sock stream 和資料報式套接字 sock dgram 而這些資料報都是由系統提供的協議棧實現,使用者只需要填充應用層報文即可,由系統完成底層報文頭的填充並傳送。然而在某些情況下需...

原始套接字

參考1 原始套接字能幹什麼?參考2 原始套接字抓包實踐 參考3 各層頭結構 通過原始套接字,我們可以抓取所有傳送到本機的ip包 包括ip頭和tcp udp icmp包頭 也可以抓取所有本機收到的幀 包括資料鏈路層協議頭 普通的套接字無法處理icmp igmp等網路報文,而sock raw可以。利用原...