我使用Ruby packetfu庫來構造和發送原始數據包。 我可以得到它的工作,但有一些我認爲我做錯了。 (順便說一句,紅寶石+ packetfu真正得到整個原始數據包操作簡便..)使用ruby packetfu發送原始TCP數據包 - 需要目標MAC地址?
這裏是我的代碼: (該MAC地址被屏蔽的位)
packet.eth_saddr = "XX:XX:88:XX:03:BD"
packet.eth_daddr = "XX:6D:57:AD:XX:A3"
packet.ip_header.ip_saddr="192.168.0.16"
packet.ip_header.ip_daddr="192.168.0.13"
,當我打電話packet.to_w ('eth0'),它被交付。 ,因爲你可以看到它是導致我撓頭的MAC地址。 每次需要發送數據包時必須找出目的MAC地址真的很不方便... 我測試過源MAC地址不是那麼重要,它仍然可以在沒有它的情況下工作。 但目標MAC地址是必須的(如果沒有它,數據包不會熄滅)。
並且我不記得必須在C中使用原始套接字... 並且如果在將數據包放在網絡上之前需要執行ARP,會更糟糕,而且更糟糕的是,請執行DNS查詢或者,如果我發送數據包到互聯網的東西....
我想我在這裏的東西,像一個班輪我需要調用..但閱讀後,我無法弄清楚通過packetfu的代碼和文檔....
任何人?
這正是我所需要的。 :)謝謝託德。 – user1461479