一.raw socket介紹:
1、raw socket中文叫原始套接字,它和其他的套接字的不同之處在於它工作在
網路層或資料鏈路層
,而其他型別的套接字工作在傳輸層,只能進行傳輸層資料操作。
二.raw socket有多種建立方法
1. sock_fd = socket(af_inet, sock_raw, type)
af_inet:抓網路層的ip資料報。
type:表示ip資料報上層所使用的協議。例如:(對應於ip資料報首部協議字段)
type=
ipproto_icmp: 抓取icmp包(網路層協議,封裝在ip資料報上)。
type=ipproto_tcp: 抓取tcp包。
type==ipproto_udp: 抓取udp包。
2.sock_fd = socket(pf_packet, sock_raw, htons(x) )
pf_packte: 抓取資料鏈路層的mac幀。
x:常用的取值有:eth_p_ip 、eth_p_arp 、eth_p_rarp。(對應於mac幀首部型別字段)
eth_p_ip 0x0800 只接收發往本機mac的ip型別的資料幀
eth_p_arp 0x0806 只接受發往本機mac的arp型別的資料幀
eth_p_rarp 0x08035 只接受發往本機mac的rarp型別的資料幀
eth_p_all 0x3 接收發往本機mac的所有型別ip arp rarp的資料幀, 接收從本機發出的所有型別的資料幀.(混雜 模式開啟的情況下,會接收到非發往本地mac的資料幀)
mysql的簡單介紹 mysql的簡單介紹
mysql的簡單介紹 資料庫的內部鏈結 1 連線管理器 使用者或應用程式連線 2 分析器 3 快取區4 優化器 優化器執行的結果交由儲存引擎,再轉向物理層 表空間 myisam每個表有三個檔案 frm 表結構 myd 表資料 myi 表索引 innodb 所有表空間再乙個檔案 資料庫失敗的原因 1 ...
簡單的 介紹 樹形DP介紹
給定一棵有n個節點的樹 通常是無根樹,也就是有n 1條無向邊 我們可以任選乙個節點為根節點,從而定義出每個節點的深度和每棵子樹的根。在樹上設計動態規劃演算法時,一般就以節點從深到淺 子樹從小到大 的順序作為dp的 階段 dp的狀態表示中,第一維通常是節點編號 代表以該節點為根的子樹 大多數時候,我們...
ORACLE SEQUENCE的簡單介紹
在oracle中sequence就是所謂的序列號,每次取的時候它會自動增加,一般用在需要按序列號排序的地方。1 create sequence 你首先要有create sequence或者create any sequence許可權,create sequence emp sequence incr...