Linux 上建立 WAP 网关 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

查了很多资料,终于能够在Linux上建立一个WAP网关了!建立成功后,你就可以使用自己的WAP网关浏览无线网络内容!试试抛弃中国移动提供的网关参数而使用自己DIY出来的WAP网关,这样的感觉,呵呵,挺酷的!
一、系统需求
 
需要libxml2<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />2.2.5或更高版本,这个XML库是安装和编译网关所需要的。
可以通过以下命令检查系统中是否已经安装libxml2库:
# rpm -qa | grep libxml2
二、建立WAP网关
很多商用的WAP网关价格令人咋舌!根本不是个人用的起的。不过,有一个名为KannelWAP网关是完全免费的!Kannel是一个开放源代码的WAP网关项目,在安装后还可以自定义网关参数。打造自己的个性化WAP网关!
1
、下载安装
目前最新的Kannel稳定版版本为1.4.0,可以在[url]http://www.kannel.org[/url]下载。下载后进行安装:
# tar xzvf gateway-1.4.0.tar.gz
# mv gateway-1.4.0 /usr/local/kannel
# cd /usr/local/kannel
# ./configure --enable-start-stop-daemon
# make
# make bindir=/usr/local/bin install
2
、配置网关
# vi gw/wapkannel.conf
# KANNLE WAP
示例配置文档
# Created by Nanu
# [url]http://nanu.8866.org[/url]
这是一个必须变量 core
group = core
用于bearerbox侦听HTTP管理命令的端口号。可以设定为高于1023的任何端口
admin-port = 13333
指定是否启用 SSL
admin-port-ssl = false
# HTTP 
管理命令的密码
admin-password = yourpasswd
请求Kannel状态的密码。如果没有设置,则无需密码。
status-password = rose123
拒绝来自该IP地址的连接
admin-deny-ip = "123.123.123.123"
允许这些IP的连接,可以使用通配符
admin-allow-ip = "*.*.*.*"
用于wapbox连接的端口。如果没有设置,则Kannel不能处理WAP传输
wapbox-port = 13002
拒绝来自该IP地址的连接
box-deny-ip = "123.123.123.123"
允许这些IPWAP单元的连接,可以使用通配符
box-allow-ip = "*.*.*.*"
拒绝来自该IPUDP数据包
udp-deny-ip = "123.123.123.123"
允许来自该IPUDP数据包,可以使用通配符
udp-allow-ip = "*.*.*.*"
如果设置了这个参数,Kannel就会侦听指定IP92009208端口的WAP UDP数据包。
如果不需要具体限定,可以只用一个星号
wdp-interface-name = "*"
日志文件
log-file = "kannel.log"
日志级别
# 0 
调度
# 1 
信息
# 2 
警告
# 3 
错误
# 4 
致命问题
log-level = 1
# WAPBOX 
组配置信息
必选变量
group = wapbox
运行bearerbox的计算机
bearerbox-host = localhost
计时器的较验频率
timer-freq = 1
日志文件
log-file = "wap.log"
日志级别
# 0 
调度
# 1 
信息
# 2 
警告
# 3 
错误
# 4 
致命问题
log-level = 1
3
、启动网关
必须先启动bearerbox,然后再启动 wapbox。由于bearerbox是网关的基本部分,所以必须要先启动。
启动bearerbox
/bearerbox -v 1 /usr/local/kannel/gw/wapkannel.conf
启动wapbox
/wapbox -v 1 /usr/local/kannel/gw/wapkannel.conf
三、通过HTTP管理网关
可用命令:
[url]http://localhost:13333/shutdown?password=yourpasswd [/url]
(关闭网关)
[url]http://localhost:13333/status?password=yourpasswd   [/url]
(获取网关状态)
[url]http://localhost:13333/resume?password=yourpasswd   [/url]
(继续运行网关)
说明:
13333
:为配置文件中admin-port指定的端口
password
:为配置文件中admin-password指定的密码
四、使用一个支持WAP的手机或者模拟器测试
1
、确认LinuxIPTABLES或者其他防火墙开放相应的WAP端口;
2
、修改你手机或手机模拟器中的WAP网关参数为你运行的LinuxIP地址;
3
、访问一个基于WML页面的WAP站点,如果能够访问则说明成功!