linux-igd 是個類似防火牆軟體,這邊不討論編譯問題,而是討論使用問題,目前版本是 libupnp 1.4.1, linux-igd 0.95,請參考源碼中的 INSTALL 說明。後續我會對 linux-igd 源碼做分析。
首先你應該執行 "route add -net 239.0.0.0 netmask 255.0.0.0 eth0",其中的 eth0 是指對內通訊的網卡。順便再說明一下,linux-igd 應該跟防火牆軟體裝在一起,目前討論的都是搭配 iptables, 因此你應該修改 /etc/upnpd.conf 讓其 iptables_location = "/sbin/iptables" 指向正確的命令。另外,有點廢話的是,這軟體應該裝在具有「對內」與「對外」同時存在的網路環境上。
其實際執行範例如:
# upnpd eth1 eth0 <-- 前者是對外的網卡,後者是對內的網卡,若您只有一張網卡,或許是 # upnpd eth0 eth0:192.168 <-- 前者變成是撥接的對外網卡,eth0:192.168 是虛擬網卡用來對內部用 若你發現沒有 upnpd 這支 daemon 在背景跑的話,可以試試加上 '-f' 抑制它變成 daemon,如此可以立即得知錯誤訊息。
錯誤訊息應該會放在 /var/log/syslog 內,搜尋含 upnpd 的訊息對你會有幫助。
0 意見:
張貼留言