用Linux做wifi热点/无线路由

以fedora14为例安装hostapd,将Linux笔记本部署为一台高性能无限路由器,顺便说一句,我的fedora14安装在一台10英寸的上网本上。





工具/原料

有无线网卡、有线网卡的笔记本一台


安装Linux操作系统,我使用的是fedora14




方法/步骤

检查确认笔记本网卡支持master模式

首先要安装一个iw:yum install iw -y

然后执行命令:iw list

在命令执行结果中如果看到了下面的内容,就说明这张网卡是支持用于ap做路由的

Supported interface modes:

* IBSS

* managed

* AP

* AP/VLAN

* monitor

* mesh point



安装hostapd

通过 yum install hostapd -y 安装,如果是其它红帽系列的可以安装epel的源,或者找一下hostapd的rpm,下载对应自己发行版的进行安装。其它Linux可以通过源码安装。


修改配置文件

# vim /etc/hostapd/hostapd.conf

修改成如下状态

ctrl_interface=/var/run/hostapd

ctrl_interface_group=wheel

macaddr_acl=0

auth_algs=1

ignore_broadcast_ssid=0

wpa=3

wpa_key_mgmt=WPA-PSK

wpa_pairwise=TKIP

rsn_pairwise=CCMP

wpa_passphrase=ap_password

driver=nl80211

interface=wlan0

hw_mode=g

channel=9

ssid=ap_name


注意修改涉及到的ssid和密码



安装和配置dhcp

# yum install dhcpd -y

# vim /etc/dhcp/dhcpd.conf

将此文件改成如下:

option domain-name-servers 211.161.45.222,10.141.146.10;

default-lease-time 3600;

max-lease-time 7200;

log-facility local7;

subnet 192.168.7.0 netmask 255.255.255.0 {

range  192.168.7.77 192.168.7.99;

option broadcast-address 192.168.7.255;

option routers 192.168.7.7;

}


注意将第一行的nameserver添加成你isp提供的dns,这样解析的速度会快一些,不知道的话就改成谷歌的8.8.8.8好了。subnet 里面设置的是分配给连接无线路由的设备的ip段,可以根据自己需求进行调整,这里给了192.168.7.77-99

需要注意的是,option routers要写成这台机器的wlan0的ip,这个是手动设置的

# ifconfig wlan0 192.168.7.7


配置SNAT

Linux可以很方便的通过iptables配置SNAT服务器,命令如下:

iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -s 192.168.4.0/24 -j ACCEPT
iptables -A FORWARD -d 192.168.4.0/24 -j ACCEPT

其中第一条表示将通过本机的转发数据包从eth0(外网)这个网卡发出去,另外两条表示只转发192.168.4.0/24这个网段过来的数据包,这个网段正好是wlan0其它设备连上本机以后分配的网段。

还需要在打开内核的ip转发功能:

# vim /etc/sysctl.conf

添加或修改这样一段:

net.ipv4.conf.default.rp_filter = 1

然后执行命令

# sysctl -p


启动相关服务

/etc/init.d/dhcpd start

/etc/init.d/hostapd start
参与0

0同行回答

“答”则兼济天下,请您为题主分忧!

提问者

擅长领域: 服务器Linux大数据

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2013-08-16
  • 关注会员:0 人
  • 问题浏览:1470
  • X社区推广