在网上找了一个例子,可是按照他的方法却不能实现。下面是网上找的例子:
在Linux中部署UPnP支持
我们假设该Linux的内核版本是2.4.x,使用拨号上网,外网接口是ppp0,内网接口是eth0,并且已经启用iptables设定了 NAT。
在Linux中部署UPnP主要使用2个软件的配合:UPnP SDK for Linux和LinuxIGD。
下载地址:
UPnP SDK for Linux:http://sourceforge.net/projects/upnp/
LinuxIGD:http://linux-igd.sourceforge.net/
注意:要下载upnpsdk-1.0.4.tar.gz,1.0.4以上的版本不能和LinuxIGD很好的协同工作!
安装:
1. 解包UPnP SDK
# tar xzvf upnpsdk-1.0.4.tar.gz
2. 修改源代码
为了能够使Windows MSN Messenger在UPnP下正常通讯,所以必须修改源代码:
# cd upnpsdk-1.0.4
# vi src/ssdp/ssdplib.c
将第406行的:
SelfAddr.sin_addr.s_addr = inet_addr(SSDP_IP);
改为:
SelfAddr.sin_addr.s_addr = htonl(INADDR_ANY);
3. 编译安装UPnP SDK
# make
# make install
4. 解包Linux-IGD
# tar xzvf linuxigd-0.92.tgz
5. 编译安装Linux-IGD
# cd linux-igd
# make
# make install
配置:
1. 增加广播路由
# route add -net 239.0.0.0 netmask 255.0.0.0 eth0
2. 为iptables建议一个软链接
# cd /usr/sbin
# ln -s /sbin/iptables ./
启动UPnP
# upnpd ppp0 eth0
诊断UPnP运行状态
# tail /var/log/messages
如果能够看到:
Dec 14 16:01:49 doorway -- MARK --
Dec 14 16:02:15 doorway upnpd: The Linux UPnP Internet Gateway Device Ver 0.92 by Dime ([email protected])
Dec 14 16:02:15 doorway upnpd: Special Thanks for Intel's Open Source SDK and original author Genmei Mori's work.
则说明UPnP已经成功启动。
本篇文章来源于 Linux公社网站(www.linuxidc.com) 原文链接:http://www.linuxidc.com/Linux/2009-01/18094.htm
在我自己的电脑上 用命令 # tail /var/log/messages
Nov 1 16:58:47 dj-laptop kernel: [ 9881.711051] ADDRCONF(NETDEV_UP): wlan0: link is not ready
Nov 1 17:00:39 dj-laptop kernel: [ 9994.272992] ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
Nov 1 17:07:12 dj-laptop kernel: [10386.499729] process `sysctl' is using deprecated sysctl (syscall) net.ipv6.neigh.default.retrans_time; Use net.ipv6.neigh.default.retrans_time_ms instead.
Nov 1 17:10:10 dj-laptop kernel: [10564.877550] ADDRCONF(NETDEV_UP): eth0: link is not ready
Nov 1 17:29:08 dj-laptop kernel: [11702.969050] ADDRCONF(NETDEV_UP): eth0: link is not ready
Nov 1 17:54:19 dj-laptop -- MARK --
Nov 1 18:14:19 dj-laptop -- MARK --
Nov 1 18:34:19 dj-laptop -- MARK --
Nov 1 18:54:19 dj-laptop -- MARK --
Nov 1 19:14:19 dj-laptop -- MARK --
不知道是哪里错了,希望大虾指导。。。
在Ubuntu中配置upnp
-
- 帖子: 1
- 注册时间: 2011-10-13 17:06
- cnkilior
- 论坛版主
- 帖子: 4984
- 注册时间: 2007-08-05 17:40
Re: 在Ubuntu中配置upnp
too old
-
- 帖子: 6
- 注册时间: 2010-02-23 22:51
Re: 在Ubuntu中配置upnp
upnpd: error while loading shared libraries: libixml.so.2: cannot open shared object file: No such file or directory
这是怎么回事?
这是怎么回事?
-
- 帖子: 6
- 注册时间: 2010-02-23 22:51
Re: 在Ubuntu中配置upnp
补充:我已经有了libxml2相关库
[root@localhost sbin]# ldd upnpd
linux-gate.so.1 => (0x00998000)
libpthread.so.0 => /lib/libpthread.so.0 (0x004df000)
libupnp.so.2 => /usr/lib/libupnp.so.2 (0x00b03000)
libixml.so.2 => not found
libthreadutil.so.2 => not found
libc.so.6 => /lib/libc.so.6 (0x00352000)
/lib/ld-linux.so.2 (0x00333000)
libuuid.so.1 => /lib/libuuid.so.1 (0x00c7a000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00110000)
[root@localhost sbin]# ls /usr/lib/libxml
libxml2.a libxml2.so.2 libxmlsec1.a libxmlsec1.so.1
libxml2.so libxml2.so.2.6.26 libxmlsec1.so libxmlsec1.so.1.2.9
该如何解决上面的问题呢?
[root@localhost sbin]# ldd upnpd
linux-gate.so.1 => (0x00998000)
libpthread.so.0 => /lib/libpthread.so.0 (0x004df000)
libupnp.so.2 => /usr/lib/libupnp.so.2 (0x00b03000)
libixml.so.2 => not found
libthreadutil.so.2 => not found
libc.so.6 => /lib/libc.so.6 (0x00352000)
/lib/ld-linux.so.2 (0x00333000)
libuuid.so.1 => /lib/libuuid.so.1 (0x00c7a000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00110000)
[root@localhost sbin]# ls /usr/lib/libxml
libxml2.a libxml2.so.2 libxmlsec1.a libxmlsec1.so.1
libxml2.so libxml2.so.2.6.26 libxmlsec1.so libxmlsec1.so.1.2.9
该如何解决上面的问题呢?
-
- 帖子: 6
- 注册时间: 2010-02-23 22:51
Re: 在Ubuntu中配置upnp
问题解决了
#upnpd ppp0 eth0
upnpd: error while loading shared libraries: libupnp.so.2: cannot open shared object file: No such file or directory
#ln -s /usr/lib/libupnp.so /usr/lib/libupnp.so.2
upnpd: error while loading shared libraries: libixml.so.2: cannot open shared object file: No such file or directory
[root@localhost linuxigd-1.0]# ln -s /usr/local/lib/libixml.so.2 /usr/lib/libixml.so.2
/usr/sbin/upnpd: error while loading shared libraries: libthreadutil.so.2: cannot open shared object file: No such file or directory
[root@localhost linuxigd-1.0]# ln -s /usr/local/lib/libthreadutil.so.6 /usr/lib/libthreadutil.so.2
#upnpd ppp0 eth0
upnpd: error while loading shared libraries: libupnp.so.2: cannot open shared object file: No such file or directory
#ln -s /usr/lib/libupnp.so /usr/lib/libupnp.so.2
upnpd: error while loading shared libraries: libixml.so.2: cannot open shared object file: No such file or directory
[root@localhost linuxigd-1.0]# ln -s /usr/local/lib/libixml.so.2 /usr/lib/libixml.so.2
/usr/sbin/upnpd: error while loading shared libraries: libthreadutil.so.2: cannot open shared object file: No such file or directory
[root@localhost linuxigd-1.0]# ln -s /usr/local/lib/libthreadutil.so.6 /usr/lib/libthreadutil.so.2
- photor
- 论坛版主
- 帖子: 11004
- 注册时间: 2008-04-26 12:41