在 Cubieboard 上搭建 SoftAP 热点,并通过 OpenVPN 科学上网

点滴 admin 5年前 (2014-04-22) 142次浏览 已收录 0个评论 扫描二维码

Mac OS X 和 Windows 架设 SoftAP 的步骤都不难:Mac OS X 只要在设置里点几下鼠标就行了;Windows
虽然要用到 CMD 的 netsh 命令,但是一堆傻瓜化的 XX 助手也能轻松架设 SoftAP (大不了再丢十几块的钱去买 3○0
或者○米的那种叫做随身 wifi无线 USB 网卡嘛笑)。相对的 Linux 架设 SoftAP
的方法就相对麻烦些了,但是稍作了解的话就会发现这并不是什么难事,而且 Linux 的 SoftAP 能实现很多 Windows 和 Mac OS
X 上不能实现的功能。

这次教程使用的平台是 CubieTruck ,系统是 Debian wheezy,进程管理工具是 sysvinit。

确定网卡支持

首先要确定网卡是否支持 SoftAP

安装 iw :

# apt-get install iw

然后使用 iw 查看网卡情况

# iw list

……

Supported interface modes:

……

* managed

……

* AP

……

如果看到了这样的内容,恭喜你,你的设备支持 SoftAP

之后可以通过 lsusb 和 lspci 来确认网卡的芯片。如果是瑞昱(rtlxxxx)的芯片的话就需要瑞昱提供的 hostapd 才能驱动了,稍微麻烦一点,这里就不多说了(其实只是偷懒……

如果需要购买网卡的话推荐腾达 wm311+,这个网卡的芯片是 RT3070,不用特殊编译就能使用~

然后确定 interface 名称:

# ifconfig

eth0 Link encap:Ethernet HWaddr c0:b0:d0:4a:56:b1

……

lo Link encap:Local Loopback

……

wlan0 Link encap:Ethernet HWaddr 00:22:f4:f8:c3:89

……

一般来说有线网卡是 eth0,无线网卡是 wlan0 ,不过也有可能不同。记下它们。

配置 Hostapd

# apt-get install hostapd

# vim /etc/hostapd/hostapd.conf

输入以下内容:

interface=wlan0 #interface 名称

ssid=yourssid #SoftAP 的名称,按需修改

channel=11

wpa=2 #选 1 是 WPA,2 是 WPA2,3 是 WPA/WPA2 ,其实都可以啦

wpa_passphrase=yourpasswd #密码,同样按需修改

wpa_key_mgmt=WPA-PSK

wpa_pairwise=CCMP #不使用 TKIP 是因为 802.11n 不支持

rsn_pairwise=CCMP

driver=nl80211

hw_mode=g

wpa_ptk_rekey=600

ieee80211n=1 #如果你的网卡不支持 802.11n 就不要输入这个了。

保存后编辑默认配置文件:

# vim /etc/default/hostapd

加入这一行:

DAEMON_CONF=”/etc/hostapd/hostapd.conf”

保存然后启动服务就行了

# service hostapd start

不出意外的话你已经可以搜到你设置的热点了。

分配 IPv4 地址并转发

虽然热点已经出来了,但是连接的话是会卡在获得 ip 地址的阶段的。所以我们需要架设 Dhcp 服务端。

首先给网卡分配地址:

# ip addr add 192.168.1.1/24 dev wlan0

可以按照需求来修改 ip 地址。然后把这个命令加入开机脚本 /etc/rc.local 吧~

通过修改 /etc/network/interface 更方便而且一劳永逸,这里不多说~

然后打开 ipv4 内核转发

# vim/etc/sysctl.conf

加入以下内容:

net.ipv4.ip_forward = 1

保存后应用配置

#sysctl -p

然后安装 dnsmasq :

# apt-get install dnsmasq

# vim /etc/dnsmasq.conf

加入以下内容:

interface=wlan0 #interface 名称

bind-interfaces

dhcp-range=192.168.1.100,192.168.1.200,24h #应该和上面分配的 ip 地址和子网掩码相符

dhcp-option = 6,8.8.8.8,8.8.4.4 # DNS 地址

保存后启动

# service dnsmasq start

最后打开 nat 转发

#iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

同样将这个命令写入 rc.local 使其开机时执行。

这时候连接上热点,应该就可以浏览网页了~

可选:分配 ipv6 地址并转发

如果你在校园网内,有 ipv6 地址而且你的 Linux 内核在 3.7 以上就可以分配 ipv6 地址了~

配置 ipv6 地址:

# ip addr add 2001:db8:8001:935:bad:caf:dead:bee/64 dev wlan0

打开 ipv6 转发:

# sysctl net.ipv6.conf.all.forwarding=1

丢进 rc.local。

安装 radvd:

# apt-get install radvd

# vim /etc/radvd.conf

输入以下内容:

interface wlan0 {
AdvSendAdvert on;
prefix 2001:db8:8001:935::/64 {
AdvOnLink on;
AdvAutonomous on;
AdvRouterAddr on;
};
};

然后启动 radvd

# service radvd start

最后打开 ipv6 nat 转发

# ip6tables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

这样你的客户端就能分配到 ipv6 地址并访问 ipv6 网络资源了~

可选:全局 OpenVPN 翻墙

在我的上一篇文章在 VPS 上架设 OpenVPN上已经介绍了配置服务端的方法。

下载 OpenVPN

# apt-get install openvpn

将之前拿到的服务器 key、crt 证书和 ca.art 连同写好的 ovpn 文件放入 /etc/openvpn(ovpn 文件改名为 conf 文件)

# vim/etc/default/openvpn

加入以下内容:

AUTOSTART=”cubie” #改成你的配置文件名

保存后启动

# service openvpn start

配置好 nat 转发:

# iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

这样你的客户端就能全局 OpenVPN 翻墙了。

在下水平有限,写的教程可能不够完整,如果有问题的话欢迎联系在下……以上(土下座


少将博客 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:在 Cubieboard 上搭建 SoftAP 热点,并通过 OpenVPN 科学上网
喜欢 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址