Hostapd 관리형 액세스 포인트의 잘못된 인터페이스에서 ARP 요청 보내기

Hostapd 관리형 액세스 포인트의 잘못된 인터페이스에서 ARP 요청 보내기

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 요청이 올바른 인터페이스에서 전송되도록 하려면 어떻게 해야 합니까?

관련 정보