Martin.xu

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

ubuntu下使用hostapd建立wifi热点

环境:Ubuntu18
通过enp1s0连接外网,通过wlp2s0建立热点

enp1s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.33  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::834e:d71c:2b5e:8516  prefixlen 64  scopeid 0x20<link>
        ether 00:e0:4c:68:1c:b3  txqueuelen 1000  (Ethernet)
        RX packets 14105  bytes 3894952 (3.8 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 10127  bytes 1500945 (1.5 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 161  bytes 12471 (12.4 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 161  bytes 12471 (12.4 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlp2s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.1  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::226:4dff:fe04:63f8  prefixlen 64  scopeid 0x20<link>
        ether 00:26:4d:04:63:f8  txqueuelen 1000  (Ethernet)
        RX packets 8015  bytes 1158906 (1.1 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 7666  bytes 3634525 (3.6 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

1.安装isc-dhcp-server

sudo apt-get install hostapd isc-dhcp-server

开机不需要启动这两个服务,建议把它们关掉:

sudo update-rc.d -f hostapd remove

2.配置 hostapd 和 dhcpd

注意自己设置其中的无线热点名称ssid和认证密码

vi /etc/hostapd/hostapd.conf
interface=wlp2s0
driver=nl80211
ssid=YOUR_AP_NAME
hw_mode=g
channel=10
macaddr_acl=0
auth_algs=3
wpa=2
wpa_passphrase=YOUR_AP_PASSWORD
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP CCMP
rsn_pairwise=TKIP CCMP

注意dhcpd.conf的配置在末尾添加

vi /etc/default/isc-dhcp-server
INTERFACES="wlp2s0"

vi /etc/dhcp/dhcpd.conf
subnet 192.168.0.0 netmask 255.255.255.0 {
    range 192.168.0.2 192.168.0.250;
    option routers 192.168.0.1;
    option broadcast-address 192.168.0.255;
}

3.配置无线地址及重启

ifconfig wlp2s0 192.168.0.1/24
service isc-dhcp-server restart

4.打开数据包转发,通过iptables将无线网卡的流量转发到本机联网的端口enp1s0(如果你用无线上网改为wlp2s0):

echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o enp1s0 -j MASQUERADE

5.开启自动启动脚本

vi /etc/rc.local
sudo iptables -t nat -A POSTROUTING -o enp1s0 -j MASQUERADE

exit 0

chmod 755 /etc/rc.local

 

posted on 2020-02-20 11:44  Martin.xu  阅读(1581)  评论(0)    收藏  举报