두 개의 이더넷 어댑터(bridge-utils)로 브리지된 DHCP(dnsmasq)를 사용하여 WiFi 액세스 포인트(hostapd)에서 IP 주소를 얻을 수 없습니다.

두 개의 이더넷 어댑터(bridge-utils)로 브리지된 DHCP(dnsmasq)를 사용하여 WiFi 액세스 포인트(hostapd)에서 IP 주소를 얻을 수 없습니다.

내 Android 휴대폰이 WiFi 연결을 통해 DHCP 주소를 얻으려고 시도했지만 실패했습니다.

분명히 모든 것을 한 번에 수행할 수 있는 완전한 가이드를 찾을 수 없었기 때문에 설정을 엉망으로 만들었을 것입니다. 그래서 여러 가이드를 결합해야 했지만 여전히 Linux의 네트워크 구성이 조금 낯설기 때문입니다.

내가 달성하고 싶은 것:

- 동일한 네트워크에 있는 모든 장치가 IP 주소를 받을 수 있도록 WiFi 액세스 포인트와 DHCP 서버를 만듭니다. 인터넷 액세스가 필요하지 않으므로 라우팅이 필요하지 않습니다. WiFi 또는 이더넷을 통해 연결된 모든 장치에 IP 주소를 제공하는 스위치(브리지) 역할을 하는 서버가 있는 로컬 네트워크만 있으면 됩니다.

이것이 내가 가진 것입니다:

  • Ralink RT5370 WiFi 동글(액세스 포인트를 지원한다고 주장됨)과 두 개의 이더넷 포트(하나는 RPi의 내장 포트이고 다른 하나는 Trendnet TU2-ET100(칩 AX88772))가 있는 Linux 시스템(실제로는 Raspbian이 포함된 Raspberry Pi)

  • bridge-utils 및 dnsmasq를 설치했으며 이더넷 연결에 모든 것이 문제가 없습니다. RPi 이더넷 포트에 연결된 모든 장치는 dnsmasq를 통해 RPi로부터 IP 주소를 받습니다.

  • 우선, Hostapd를 설치하고 개방형 AP로 구성했습니다. WPA를 사용해 보았지만 Android 휴대폰에서도 "인증 실패" 메시지가 표시되어 실패하여 인증을 비활성화했습니다. 이제 내 Android 장치가 IP 주소를 얻으려고 시도하다가 실패합니다.

이것은 내 구성 파일입니다.

/etc/default/hostapd:

interface=wlan0
hw_mode=g
bridge=br0
channel=1
ssid=FakeTestServer_AP
auth_algs=1
wmm_enabled=0

/etc/default/hostapd:

DAEMON_CONF="/etc/hostapd/hostapd.conf"

/etc/네트워크/인터페이스:

auto lo

iface lo inet loopback

auto br0
iface eth0 inet manual
iface eth1 inet manual

iface br0 inet static
        bridge_ports eth0 eth1 wlan0
        bridge_stp off
        bridge_fd 0
        bridge_waitport 0
        bridge_maxwait 0
        address 10.0.0.1
        netmask 255.255.255.0

/etc/dnsmasq.conf:

interface=br0
dhcp-range=10.0.0.2,10.0.0.254,255.255.255.0,12h

ifconfig표시되는 내용 은 다음과 같습니다 .

br0       Link encap:Ethernet  HWaddr 00:14:d1:da:c7:dc
          inet addr:10.0.0.1  Bcast:10.0.0.255  Mask:255.255.255.0
          inet6 addr: fe80::214:d1ff:feda:c7dc/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1343 errors:0 dropped:0 overruns:0 frame:0
          TX packets:212 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:83674 (81.7 KiB)  TX bytes:16750 (16.3 KiB)

eth0      Link encap:Ethernet  HWaddr b8:27:eb:74:1f:8c
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:5824 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2800 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1448587 (1.3 MiB)  TX bytes:1057796 (1.0 MiB)

eth1      Link encap:Ethernet  HWaddr 00:14:d1:da:c7:dc
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:5353 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1145578 (1.0 MiB)  TX bytes:414153 (404.4 KiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:52 errors:0 dropped:0 overruns:0 frame:0
          TX packets:52 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:3744 (3.6 KiB)  TX bytes:3744 (3.6 KiB)

mon.wlan0 Link encap:UNSPEC  HWaddr 00-C1-40-95-0D-43-00-00-00-00-00-00-00-00-00-00
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:7417 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:2107086 (2.0 MiB)  TX bytes:0 (0.0 B)

wlan0     Link encap:Ethernet  HWaddr 00:c1:40:95:0d:43
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:182 errors:0 dropped:0 overruns:0 frame:0
          TX packets:122 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:31498 (30.7 KiB)  TX bytes:21682 (21.1 KiB)

명확성을 위해 반복합니다. 브리지와 두 이더넷 연결 모두 잘 작동하고 오류 없이 실행됩니다.

sudo service hostapd restart
sudo service dnsmasq restart
sudo service networking restart

처음에는 bridge-utils가 메시지와 함께 실패합니다.

can't add wlan0 to bridge br0: Operation not supported

하지만 이를 호스트탭 설정에 추가한 후 bridge=br0bridge-utils가 불평을 멈췄기 때문에 wlan0이 브리지에 추가된 것 같지만 거기에서 무슨 일이 일어났는지 잘 모르겠습니다.

WiFi를 액세스 포인트 모드에서 작동시키고 eth0 및 eth1과 동일한 브리지에 속하게 하려면 어떻게 해야 합니까?

답변1

/etc/network/interfaces를 보면 wlan0이 브리지에 포함된 인터페이스 중 하나로 표시되지 않습니다. 이것을 추가하는 것이 시작될 것입니다.

관련 정보