环境前提
系统:ubuntu18.04,至少拥有两张网卡(本例为有线网卡eth0和无线网卡wlan0)
其中有线网卡为外网网卡
目标
使用无线网卡制作一个简易路由器
安装isc-dhcp-server和hostapd
sudo apt-get install isc-dhcp-server hostapd
配置文件
配置DHCP服务
添加参与DHCP分配的网卡
cat /etc/default/isc-dhcp-server
INTERFACESv4="wlan0" # 自己的网卡名
INTERFACESv6="" # 没用到ipv6,所以没弄
添加DHCP详细配置
sudo vim /etc/dhcp/dhcpd.conf
option domain-name-servers 223.6.6.6, 114.114.114.114; # 添加DNS
default-lease-time 600;
max-lease-time 7200;
# 下面这段不用解释了吧,网段192.168.9.0/24,range是分配的ip段,然后是路由和反掩码
subnet 192.168.9.0 netmask 255.255.255.0 {
range 192.168.9.10 192.168.9.250;
option routers 192.168.9.1; # 设置为你的网卡ip,后面会配置
option broadcast-address 192.168.9.255;
}
配置网卡(这里以wlan0为例)
sudo ifconfig wlan0 192.168.9.1/24
sudo service isc-dhcp-server restart
打开数据包转发
通过iptables将无线网卡WLAN0的流量转发至有线网卡eth0
echo "nvidia"|sudo -S sh -c "echo '1' > /proc/sys/net/ipv4/ip_forward"
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
配置hostapd
hostapd.conf为自己创建的config文件,可放置在任意位置
sudo vim /etc/hostapd.conf
interface=wlan0
driver=nl80211
ssid=hostapd_test # SSID配置
channel=6 # 信道配置
hw_mode=g
auth_algs=1
wpa=3
wpa_passphrase=adocir9250 # WIFI密码配置
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
开启hostapd
sudo hostapd /etc/hostapd.conf
至此配置完毕,通过手机连接热点进行测试即可.