Connection Sharing
如何配连接共享。
rfkill
如果rfkill开了,那没法发包,hostapd启动不了。
用
rfkill list
来看一下,只要有yes,那就需要
rfkill unblock 0
来关掉。
hostapd
装hostapd,改配置,启动hostapd。
Example:
systemctl start hostapd
hostapd.conf
interface=<内网接口> ssid=<无线网名称> channel=<频道> ieee80211n=<启用802.11n? 1 : 0> ht_capab=<HT选项,见样例配置> wpa=<WPA选项,bitmask,WPA=1,WPA2=2> wpa_passphrase=<密码> wpa_key_mgmt=<密钥管理算法,可选WPA-PSK,WPA-EAP> wpa_pairwise=TKIP CCMP rsn_pairwise=CCMP
config IP
给内网接口配个IP。
Example:
ifconfig wlan0 192.168.1.1 netmask 255.255.255.0
dhcpd
配置dhcpd.conf,然后
dhcpd <内网接口>
Example:
dhcpd wlan0
dhcpd.conf
建个对应内网网段的block,例如
subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.100 192.168.1.200; option routers 192.168.1.1; }
也可以再把外网列出来,以免不小心dhcpd对外网服务:
subnet 128.59.16.0 netmask 255.255.248.0 { }
可以开authoritative,就会发DHCPNAK了。
NAT
sysctl net.ipv4.ip_forward=1 iptables -t nat -A POSTROUTING -s <内网网络>/<内网掩码长度> -o <外网接口> -j MASQUERADE
Example:
sysctl net.ipv4.ip_forward=1 iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j MASQUERADE