Hostapd에서 관리하고 동적 VLAN을 지원하는 무선 액세스 포인트를 설정하려고 합니다. VLAN은 802.X 인증에 사용하는 FreeRadius 서버에 의해 동적으로 관리됩니다.
내 구성을 테스트하기 위해 두 개의 장치, 즉 노트북(주소 192.168.0.2)과 전화기(주소 192.168.0.3)를 사용합니다. 둘 다 동일한 VLAN을 사용하며 서로 통신할 수 있습니다. 하지만 어느 액세스 포인트(주소 192.168.0.1)에서도 핑을 보낼 수 없습니다.
Hostapd에 대해 다음 구성이 있습니다.
###### GENERAL CONFIG ######
# define interface and driver
interface=wlp2s0
driver=nl80211
ssid=MUDDY
channel=1
# WPA2 enterprise auth
wpa=2
wpa_key_mgmt=WPA-EAP
wpa_pairwise=TKIP CCMP
# log level, all modules and somewhat verbose
logger_syslog=-1
logger_syslog_level=0
logger_stdout=-1
logger_stdout_level=1
# could be useful in the future
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
# we want 802.1x auth
ieee8021x=1
# whatever
eapol_key_index_workaround=0
# nope, no integrated eap
eap_server=0
###### RADIUS CONFIG ######
# probably irrelevant with nas_identifier set
own_ip_addr=127.0.0.1
# might make own_ip_addr irrelevant
#nas_identifier=my.nas
# address and port of RADIUS auth server
auth_server_addr=127.0.0.1
auth_server_port=1812
auth_server_shared_secret=somuchsecret
# we want accounting and be able to receive CoA messages
acct_server_addr=127.0.0.1
acct_server_port=1813
acct_server_shared_secret=somuchsecret
radius_das_port=3799
radius_das_client=127.0.0.1 thatsabigsecretohyeah
# accounting every minute
radius_acct_interim_interval=60
# VLANs are dealt with by the Radius server
dynamic_vlan=1
Hostapd가 생성한 인터페이스는 다음과 같습니다.
$ ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp0s31f6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether 98:4f:ee:14:16:23 brd ff:ff:ff:ff:ff:ff
3: wlp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
link/ether 34:f3:9a:b3:8d:69 brd ff:ff:ff:ff:ff:ff
8: wlp2s0.149: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master brvlan149 state UNKNOWN mode DEFAULT group default qlen 1000
link/ether 34:f3:9a:b3:8d:69 brd ff:ff:ff:ff:ff:ff
9: brvlan149: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
link/ether 34:f3:9a:b3:8d:69 brd ff:ff:ff:ff:ff:ff
내 노트북이 ARP 요청을 보내면 brvlan149 브리지와 wlp2s0.149 포트를 통해 응답이 전송됩니다.
그러나 내 노트북의 IP를 검색하기 위한 ARP 요청(ping 응답을 보내는 데 필요함)은 wlp2s0 인터페이스에서 전송되지만 노트북은 이를 수신하지 않습니다.
나는 이 동작과 Hostapd(또는 Linux)가 인터페이스를 관리하는 방법을 이해하지 못합니다. Hostapd 버전 2.6을 사용하고 있습니다.
비슷한 구성에서 문제가 발생할 수 있으므로 역방향 경로 필터링을 비활성화했습니다.
내 경로는 다음과 같습니다.
$ ip route show table all
default via 192.168.234.1 dev enp0s31f6 proto static metric 100
130.225.68.3 via 192.168.234.1 dev enp0s31f6 proto dhcp metric 100
169.254.0.0/16 dev enp0s31f6 proto static scope link metric 1000
192.168.0.0/24 dev wlp2s0 proto kernel scope link src 192.168.0.1
192.168.234.0/24 dev enp0s31f6 proto kernel scope link src 192.168.234.177 metric 100
broadcast 127.0.0.0 dev lo table local proto kernel scope link src 127.0.0.1
local 127.0.0.0/8 dev lo table local proto kernel scope host src 127.0.0.1
local 127.0.0.1 dev lo table local proto kernel scope host src 127.0.0.1
broadcast 127.255.255.255 dev lo table local proto kernel scope link src 127.0.0.1
broadcast 192.168.0.0 dev wlp2s0 table local proto kernel scope link src 192.168.0.1
local 192.168.0.1 dev wlp2s0 table local proto kernel scope host src 192.168.0.1
broadcast 192.168.0.255 dev wlp2s0 table local proto kernel scope link src 192.168.0.1
broadcast 192.168.234.0 dev enp0s31f6 table local proto kernel scope link src 192.168.234.177
local 192.168.234.177 dev enp0s31f6 table local proto kernel scope host src 192.168.234.177
broadcast 192.168.234.255 dev enp0s31f6 table local proto kernel scope link src 192.168.234.177
fe80::/64 dev enp0s31f6 proto kernel metric 256 pref medium
fe80::/64 dev wlp2s0 proto kernel metric 256 pref medium
fe80::/64 dev wlp2s0.149 proto kernel metric 256 pref medium
fe80::/64 dev brvlan149 proto kernel metric 256 pref medium
local ::1 dev lo table local proto kernel metric 0 pref medium
local fe80::36f3:9aff:feb3:8d69 dev wlp2s0 table local proto kernel metric 0 pref medium
local fe80::36f3:9aff:feb3:8d69 dev wlp2s0.149 table local proto kernel metric 0 pref medium
local fe80::6c8a:e7ff:fe1a:55cc dev brvlan149 table local proto kernel metric 0 pref medium
local fe80::d124:3999:7e3:55fe dev enp0s31f6 table local proto kernel metric 0 pref medium
ff00::/8 dev enp0s31f6 table local metric 256 pref medium
ff00::/8 dev wlp2s0 table local metric 256 pref medium
ff00::/8 dev wlp2s0.149 table local metric 256 pref medium
ff00::/8 dev brvlan149 table local metric 256 pref medium
교량에 대한 자세한 내용은 다음과 같습니다.
$ ip -details link show brvlan149
5: brvlan149: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
link/ether 34:f3:9a:b3:8d:69 brd ff:ff:ff:ff:ff:ff promiscuity 0
bridge forward_delay 0 hello_time 200 max_age 2000 ageing_time 30000 stp_state 0 priority 32768 vlan_filtering 0 vlan_protocol 802.1Q addrgenmode eui64
액세스 포인트의 ARP 요청이 올바른 인터페이스에서 전송되도록 하려면 어떻게 해야 합니까?