げんしぃ和尚です。 Linuxルータ上でUPnPを実現してみようと次のものをインストールしました。 upnpsdk-1.0.4.tar.gz linuxigd-0.92.tgz OSはVine-2.5です。 内側インターフェースはeth0で、外向けはppp0(eth1)です。 linux-igdの「INSTALL」というドキュメントを参考に upnpsdk-1.0.4/src/ssdp/ssdplib.cの406行目を修正してからインストールし、 その後linux-igdをインストール。 route add -net 239.0.0.0 netmask 255.0.0.0 eth0 した後、 # /usr/bin/upnpd ppp0 eth0 としました。ここまでは問題なく # ps ax 20790 ? S 0:00 /usr/bin/upnpd ppp0 eth0 20791 ? S 0:00 /usr/bin/upnpd ppp0 eth0 20792 ? S 0:00 /usr/bin/upnpd ppp0 eth0 20793 ? S 0:00 /usr/bin/upnpd ppp0 eth0 20794 ? S 0:00 /usr/bin/upnpd ppp0 eth0 /var/log/messageを見ても Aug 16 06:18:05 tp600 upnpd: The Linux UPnP Internet Gateway Device Ver 0.92 by Dime (dime@xxxxxxxxxxxxx) Aug 16 06:18:05 tp600 upnpd: Special Thanks for Intel's Open Source SDK and orig inal author Genmei Mori's work. 問題なさそうです。 ここでUPnPが機能しているかどうかですが、実は対応アプリって使ったことが なくこれから試そうと思っていたところなのでちょっと判りません。 しかし、前述のプロセスが無くなっていることに気がつきました。 再度、/var/log/messageを見ると、 Aug 16 06:21:16 tp600 upnpd: Error registering the rootdevice : -204 とあります。upnpdを起動してから落ちるまでは、多少バラツキがありますが、 3,4分といったところのようです。 解決策をご存知の方がいらっしゃったら教えて頂けないでしょう か。 linux-igdの「INSTALL」とか「README」を読み返していたら、FORWARDの デフォルトポリシーはACCEPTじゃなきゃマズイよ、という感じだったので ダメ元でポリシーを変更してみましたが、同じ状況でした。 ちなみにネット上で見つけた情報はlinux-igd-helpのMLのログですが、 生憎と私と同じ状況で何が悪いの?という状態で質問を投げていて (2003/04/30)、返信が無い状態で終わっているようです。 http://sourceforge.net/mailarchive/forum.php?thread_id=2047329&forum_id=9304 一応、linux-igdのソースを見てみた(理解出来ないので読んだとは言えない) んですが、gateway.cppの148行目でエラーを出して、149行目でupnpdを終了させ ているような感じなんですが...これが私の限界でした。 #149行目をコメントしちゃえば落ちないんじゃ?とも一瞬考えましたが、 #エラーが出ることが問題で、メッセージ的にも重要そうなのでやめました。 よろしくお願いします。