我想使用winpcap修改數據包數據,並將修改後的數據包發送到目標IP而不是原始數據包。我怎麼能意識到它?任何人都可以提出一些想法嗎?例如哪些API可以實現它?如果可能的話,幾個步驟或其他文件更受讚賞。非常感謝!如何使用winpcap修改數據包
0
A
回答
0
我想你需要TUN/TAP而不是WinPcap來實現你在你的問題中描述的任務。請在這個文件看看:
可惜這不是那麼容易的WinPcap使用。所以你可能想採取不同的方法。您能否更具體地瞭解您的需求,以便我們可以提出更簡單的替代方案,例如。在Python中編寫TCP網關?這個小工具可能是一個暗示你提供,你並不需要調整以太網幀:
1
隨着使用Winpcap
,您可以通過packet[i]=
任何十六進制修改數據包內容值(例如0xFF
)。
記住使用i>13
用於數據修改爲:
packet[0 -> 5]
是目的地MACpacket[6 -> 11]
是源MACpacket[12 -> 13]
是以太網類型frompacket[14 -> onwards]
是個數據字節
記住MAX Ethernet PACKET
長度爲1500 bytes
。
你知道PCap代表「Packet * Capture *」,對嗎?你是如何得出結論的:你可以用winpcap做類似的事情? – 2012-03-08 01:44:51
爲winpcap可以捕獲數據包,我也用它來發送原始套接字之前,我想它可能會被用來修改數據包的數據。只是一個假設@NiklasB。 – Searene 2012-03-08 05:02:01