在linux上UDP封包詭異的問題 - Linux

By Lucy
at 2011-08-18T13:04
at 2011-08-18T13:04
Table of Contents
可以用setsockopt()來設定receive broadcast packets.
※ 引述《fuha (mimi)》之銘言:
: ※ [本文轉錄自 LinuxDev 看板 #1EIH23K0 ]
: 作者: fuha (mimi) 看板: LinuxDev
: 標題: [問題] 在linux上UDP封包詭異的問題
: 時間: Mon Aug 15 20:26:40 2011
: 不好意思 最近在把windows上的程式
: 改成在linux上,發現了一個奇怪的問題
: 我要寫個收udp broadcast 封包的程式
: 我在 recvfrom 這邊之前 我會先bind eth0 的 ip
: 但是我發現我 bind ip 後 就收不到
: (255.255.255.255) 和 (192.168.3.255) 的 packet
: % 我的網域在 192.168.3.X
: 但是 如果再在bind ip 是使用 INADDR_ANY
: struct sockaddr_in my_addr;
: my_addr.sin_addr.s_addr = INADDR_ANY
: 就可以收到上述兩種 boradcast 的 packet
: 奇怪的是 我在windows這樣測 就不會有這樣收不到封包的問題?
: 請問這是 os 差異嗎? 還是我哪裡有搞錯了?
: 感謝各位高手賜教~
--
※ 引述《fuha (mimi)》之銘言:
: ※ [本文轉錄自 LinuxDev 看板 #1EIH23K0 ]
: 作者: fuha (mimi) 看板: LinuxDev
: 標題: [問題] 在linux上UDP封包詭異的問題
: 時間: Mon Aug 15 20:26:40 2011
: 不好意思 最近在把windows上的程式
: 改成在linux上,發現了一個奇怪的問題
: 我要寫個收udp broadcast 封包的程式
: 我在 recvfrom 這邊之前 我會先bind eth0 的 ip
: 但是我發現我 bind ip 後 就收不到
: (255.255.255.255) 和 (192.168.3.255) 的 packet
: % 我的網域在 192.168.3.X
: 但是 如果再在bind ip 是使用 INADDR_ANY
: struct sockaddr_in my_addr;
: my_addr.sin_addr.s_addr = INADDR_ANY
: 就可以收到上述兩種 boradcast 的 packet
: 奇怪的是 我在windows這樣測 就不會有這樣收不到封包的問題?
: 請問這是 os 差異嗎? 還是我哪裡有搞錯了?
: 感謝各位高手賜教~
--
Tags:
Linux
All Comments

By Donna
at 2011-08-21T02:49
at 2011-08-21T02:49
Related Posts
sendmail 區域網路 無法內部寄信

By Annie
at 2011-08-18T10:02
at 2011-08-18T10:02
pin 可攜軟體到 Launcher

By Lily
at 2011-08-18T07:10
at 2011-08-18T07:10
判斷文字檔是否出現 "i=0" 字串

By Isabella
at 2011-08-17T21:58
at 2011-08-17T21:58
兩port互ping的問題

By Skylar Davis
at 2011-08-17T21:37
at 2011-08-17T21:37
刪除包含某字串的整行

By Delia
at 2011-08-17T13:27
at 2011-08-17T13:27