linux 设置wifi热点

本文以centos7为例, 使用带有无线网卡的笔记本搭建wifi热点.

工具/原料

  • 有无线网卡、有线网卡的笔记本一台
  • 安装Linux操作系统,我使用的是centos7

方法/步骤

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

首先要安装一个iw:yum install iw -y
然后执行命令:iw list
在命令执行结果中如果看到了下面的内容,就说明这张网卡是支持用于ap做路由的

Supported interface modes:
* IBSS
* managed
* AP
* AP/VLAN
* monitor
* mesh point

2. 安装hostapd

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

3. 修改配置文件

# 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和密码

4. 安装和配置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

5. 配置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

6. 启动相关服务

/etc/init.d/dhcpd start
/etc/init.d/hostapd start

你可能感兴趣的:(杂文)