看板 Python 關於我們 聯絡資訊
: 所以我想開一個socket接受這些封包。 : 我在C++版也post文章詢問,有人回覆說用SOCK_RAW可以接收forward來的封包, : 但我若用s=socket.socket(socket.AF_INET,socket.SOCK_RAW,socket.IPPROTO_RAW) : s.bind(("",999)) : 無法bind()成功。bind()時雖不會有錯誤產生,但用netstat -a卻看不到999這個port有 : 被用到,當然,也接收不到任何封包。不知這個SOCK_RAW正確用法為何?抑或是有其它 : 更佳的方法呢?^_^ : : -- : ※ 發信站: 批踢踢實業坊(ptt.cc) : ◆ From: 220.133.38.221 : 推 ericsk:會希望你用tcpdump看,主要就是看封包的dest到底對不對 05/16 12:52 : 推 ericsk:如果最後一個參數改成 socket.IPPROTO_UDP 符合你的需求嗎 05/16 13:35 原來是希望我看一下dest對不對啊!這我去試試看,謝謝喲!^_^ 另外,若改成IPPROTO_UDP也是不行的!^_^||| 我查詢了一些亂七八糟的資料,若是要接收raw socket端口,要用sniffer的方式才行, 不知是否真的這麼麻煩了… -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.133.38.221