我的任务:使用 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

问题:

  1. 我错过了什么?
  2. 如何配置对正在运行的平板电脑的访问hostapd + DHCP

0