我的任务:使用 Linuxmint 在平板电脑 (x86) 上配置并运行接入点 (AP),并从连接到创建的 AP 的设备进行访问。
背景作为附加信息(但这不是问题的主题,真正的问题在描述的末尾):
- 一些测量设备必须通过 AP 连接到该平板电脑,并通过 tcp 套接字向其发送数据。
我已经完成了接下来的部分:
1.创建虚拟 WiFi 接口
- 创建的接口作为隔离的(不是桥接的,像路由器一样)工作
所有脚本均针对物理 WiFi 接口提供wlp1s0
我创建了名为wlp1s0_ap
- 创建单元(服务)文件为
/lib/systemd/system/wireless-device@.service
[Unit]
Description=Create virtual wireless interface
Requires=sys-subsystem-net-devices-wlp1s0.device
#After=network.target
After=sys-subsystem-net-devices-wlp1s0.device
[Service]
Type=oneshot
#ExecStart=/usr/sbin/iw dev wlp1s0 interface add %I type __ap addr "00:0c:e3:6f:78:ee"
ExecStart=/usr/sbin/iw dev wlp1s0 interface add %I type managed addr "00:0c:e3:6f:78:ee"
#ExecStart=/usr/bin/iw dev wlan0 interface add wlp1s0_ap type __ap addr "00:0c:e3:6f:78:ee"
[Install]
WantedBy=multi-user.target
-
然后运行
systemctl enable wireless-device@wlp1s0_ap.service
-
重新启动电脑
2. 将新的虚拟接口添加到 NetworkManager 忽略的接口中
编辑:
sudo nano /etc/NetworkManager/NetworkManager.conf
通过将wlp1s0_ap创建的接口添加到非托管设备部分(注意!附加到现有的)
[keyfile]
unmanaged-devices=interface-name:wlp1s0_ap
跑步
sudo nmcli general reload
3.配置hostapd
EVT
我使用密码呼叫了 AP ******
。更多详细信息如下。
- 安装
hostapd
sudo apt install hostapd
- 编辑文件
sudo nano /etc/default/hostapd
- 当前版本如下
DAEMON_CONF="/etc/hostapd/hostapd.conf"
- 编辑配置文件(以下是当前变体):
sudo nano /etc/hostapd/hostapd.conf
interface=wlp1s0_ap
driver=nl80211
country_code=EE
ssid=EVT
wpa_passphrase=****
hw_mode=g
channel=10
wpa=2
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
auth_algs=1
macaddr_acl=0
ieee80211n=1
- 守护进程启动为
sudo systemctl start hostapd
4.配置DHCP服务器
从 DHCP 服务器中isc-dhcp-server
选择。
isc-dhcp-服务器配置
- 安装:
sudo apt install isc-dhcp-server
- 编辑文件
sudo nano /etc/dhcp/dhcpd.conf
,(以下是当前变体):
# dhcpd.conf
#INTERFACES="wlp1s0_ap"
option domain-name "etv.org";
option domain-name-servers 192.168.1.2, 192.168.1.3;
default-lease-time 86400;
max-lease-time 604800;
ddns-update-style none;
authoritative;
subnet 192.168.1.0 netmask 255.255.255.0 {
interface wlp1s0_ap;
## dhcp start and end IP range ##
range 192.168.1.100 192.168.1.200;
option subnet-mask 255.255.255.0; ## subnet
option broadcast-address 192.168.1.255; ## broadcast
option routers 192.168.1.254; ## router IP
}
守护进程启动为
service isc-dhcp-server start
5.为创建的虚拟接口分配静态 IP 地址
我修改了该文件以将 IP 分配192.168.1.111
给接口wlp1s0_ap
:
sudo nano /etc/network/interfaces
该文件的内容/etc/network/interfaces
是
auto lo
iface lo inet loopback
auto wlp1s0_ap
iface wlp1s0_ap inet static
address 192.168.1.111
netmask 255.255.255.0
gateway 192.168.1.0
broadcast 192.168.1.255
dns-nameservers 192.168.1.2,192.168.1.3
上述部件正在工作,我可以连接到 AP。
ifconfig
列表:
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 1386 bytes 149889 (149.8 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1386 bytes 149889 (149.8 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlp1s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.20.92.22 netmask 255.255.255.0 broadcast 172.20.92.255
inet6 fe80::9ea9:58d3:aa31:b7e9 prefixlen 64 scopeid 0x20<link>
ether 00:0c:e3:6f:78:ed txqueuelen 1000 (Ethernet)
RX packets 1111808 bytes 125498550 (125.4 MB)
RX errors 0 dropped 7507 overruns 0 frame 0
TX packets 23673 bytes 3070974 (3.0 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlp1s0_ap: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.111 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::20c:e3ff:fe6f:78ee prefixlen 64 scopeid 0x20<link>
ether 00:0c:e3:6f:78:ee txqueuelen 1000 (Ethernet)
RX packets 808 bytes 124999 (124.9 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 893 bytes 155057 (155.0 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
问题:
但我无法与该平板电脑通信
例如,ping
对分配的 IPping 192.168.1.111
给出以下响应:
PING 192.168.1.111 (192.168.1.111) 56(84) bytes of data.
From 192.168.1.101 icmp_seq=1 Destination Host Unreachable
From 192.168.1.101 icmp_seq=2 Destination Host Unreachable
From 192.168.1.101 icmp_seq=3 Destination Host Unreachable
From 192.168.1.101 icmp_seq=4 Destination Host Unreachable
^C
--- 192.168.1.111 ping statistics ---
5 packets transmitted, 0 received, +4 errors, 100% packet loss, time 4065ms
telnet输出:
~$ telnet 192.168.1.111
Trying 192.168.1.111...
telnet: Unable to connect to remote host: No route to host
问题:
- 我错过了什么?
- 如何配置对正在运行的平板电脑的访问
hostapd + DHCP
?
|