linux设置为ap命令 linux用命令设置ip地址( 五 )


4)设置 wlan0 的 ip
ifconfig wlan0 192.168.0.2
5)启动自动分配 ip 后台,为连接上的设备分配 ip
udhcpd -f /etc/udhcpd.conf
6)执行以下发送热点命令脚本send_ap.sh
#!/bin/sh
ifconfig wlan0 down
ps -ef | grep hostapd | grep -v grep | awk '{print $1}' | xargs kill -9
ps -ef | grep wpa_supplicant | grep -v grep | awk '{print $1}' | xargs kill -9
ps -ef | grep udhcpd | grep -v grep | awk '{print $1}' | xargs kill -9
hostapd -B /etc/hostapd.conf -f /var/log/hostap.log
ifconfig wlan0 192.168.0.2
udhcpd -f /etc/udhcpd.conf
然后可以用手机或者其他 wifi 设备连接 8723 发送的 ap 热点“test” , 密码 12345678
7)以上几步仅仅保证了,AP服务,你可以连接、有了dhcp你可以获得动态IP,但是如何保证设备能通过这个无线网卡来上网呢,这需要配置,将无线网卡wlan0的设备传输数据转发到有线网卡eth0上面 。所以需要配置一下路由转发规则,打通数据传输的链路 。
执行以下路由转发脚本iptables.sh
#! /bin/sh
#设置linux系统允许ip包转发
echo "1"/proc/sys/net/ipv4/ip_forward
#清除原设置
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X
iptables -t nat -X
iptables -t mangle -X
#设置filter table默认原则
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
#启用NAT功能
iptables -t nat -A POSTROUTING -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
进行路由转发时如果iptables出错,需要进行相关的内核配置:
Networking —-
Networking options —-
[*] Network packet filtering (replaces ipchains)—
Core Netfilter Configuration—
* Netfilter Xtables support (required for ip_tables)
IP: Netfilter Configuration —
* Connection tracking (required for masq/NAT)
* IP tables support (required for filtering/masq/NAT)
*IP range match support
*Packet filtering
*REJECT target support
*Full NAT
Type: tristate│
│ Prompt: iptables NAT support│
│Location:│
│- Networking support (NET [=y])│
│- Networking options│
│- Network packet filtering framework (Netfilter) (NETFILTER [=y])│
│- IP: Netfilter Configuration│
│ (1)- IP tables support (required for filtering/masq/NAT) (IP_NF_IPTABLES [=y])
CONFIG_IP_NF_NAT
│Location:│
│- Networking support (NET [=y])│
│- Networking options│
│- Network packet filtering framework (Netfilter) (NETFILTER [=y])│
│ (1)- IP: Netfilter Configuration
进行路由转发时如果nat出错,需要进行相关的内核配置:
另:也可不用udhcp,选择安装配置 isc-dhcp-server服务:
1. sudo apt-get install isc-dhcp-server
2. 安装isc-dhcp-server完毕后,在/etc/dhcp目录下会拷入一个配置文件dhcpd.conf,现在我们编辑这个文件,其它的参数设置我们不用理会 , 我们只是先根据我们的要求使用配置文件的subnet关键字加入一个子网的定义,如下:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.2 192.168.1.11;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
option domain-name-servers home;
}
3. 在/etc/default/isc-dhcp-server中添加dhcp server监听的端口:
INTERFACES="wlan0"
4. 然后重启isc dhcp server:
sudo /etc/init.d/isc-dhcp-server restart
原文链接:
文章知识点与官方知识档案匹配
CS入门技能树Linux入门初识Linux
25467 人正在系统学习中
打开CSDN APP,看更多技术内容
Deepin Linux系统中开启ap-hotspot wifi热点供其他计算机和android手机...

推荐阅读