비글본을 사용하세요.
AP를 성공적으로 설정했지만 eth0과 wlan1을 연결할 수 없습니다.
사용된 애플리케이션: Hostapd, dnsmasq, bridge-utils
/etc/dnsmasq.conf
interface=wlan1
dhcp-range=10.10.1.2,10.10.99.254,255.0.0.0,12h
/etc/hostapd/hostapd.conf
interface=wlan1
country_code=US
driver=nl80211
ssid=mySSID
hw_mode=g
channel=6
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=password
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
eapol_key_index_workaround=0
/etc/network/interfaces
앞으로세트 브릿지
auto lo eth0 eth0:1
iface lo inet loopback
iface eth0 inet static
address 192.168.2.99
netmask 255.255.255.0
gateway 192.168.2.1
dns-nameservers 8.8.8.8
iface eth0:1 inet static
address 192.168.1.226
netmask 255.255.255.0
broadcast 192.168.1.255
network 192.168.1.0
gateway 192.168.1.1
auto usb0 wlan1
iface usb0 inet static
address 192.168.7.2
netmask 255.255.255.0
network 192.168.7.0
gateway 192.168.7.2
iface wlan1 inet static
hostapd /etc/hostapd/hostapd.conf
address 10.10.1.1
network 10.10.1.0
netmask 255.0.0.0
broadcast 10.10.1.255
wireless-power on
#dns-nameservers 8.8.8.8 8.8.4.4
up iptables-restore < /etc/network/iptables.rules
/etc/network/interfaces
뒤쪽에세트 브릿지
auto lo eth0
iface lo inet loopback
iface eth0 inet manual
auto usb0 wlan1
iface usb0 inet static
address 192.168.7.2
netmask 255.255.255.0
network 192.168.7.0
gateway 192.168.7.2
iface wlan1 inet manual
hostapd /etc/hostapd/hostapd.conf
wireless-power on
iface br0 inet static
bridge_ports eth0 wlan1
address 10.10.1.1
network 10.10.1.0
netmask 255.0.0.0
broadcast 10.10.1.255
gateway 10.10.1.1
pre-up iwconfig wlan1 essid mySSID
bridge_hw xx:xx:xx:xx:xx:xx #mac address of wireless card
#dns-nameservers 8.8.8.8 8.8.4.4
up iptables-restore < /etc/network/iptables.rules
네트워크에 연결할 수 있지만 mySSID
10.10.1.1에 ping을 보낼 수 없고 그곳에서 실행 중인 서비스나 다른 장치에 연결할 수 없습니다. DHCP는 전후에 작동하지 않았고(사소한 문제는 나중에 수정하려고 시도할 수 있음) 고정 IP를 설정하여 연결했습니다.
명령을 실행할 때 표시되는 내용입니다.sudo iptables --list
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere ctstate RELATED,ESTABLISHED
ACCEPT icmp -- anywhere anywhere icmp echo-request
ACCEPT tcp -- anywhere anywhere tcp dpt:12347
ACCEPT tcp -- anywhere anywhere tcp dpt:12346
ACCEPT tcp -- anywhere anywhere tcp dpt:12345
ACCEPT tcp -- anywhere anywhere tcp dpt:webmin /* Allow connection to webmin */
DROP all -- anywhere anywhere
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
/etc/network/iptables.rules
문서
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [123:13390]
-A INPUT -i lo -j ACCEPT
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 12347-j ACCEPT
-A INPUT -p tcp -m tcp --dport 12346 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 12345-j ACCEPT
-A INPUT -p tcp -m tcp --dport 10000 -m comment --comment "Allow connection to webmin" -j ACCEPT
-A INPUT -j DROP
COMMIT
답변1
네트워크 구성에서 , network
및 netmask
구성 broadcast
이 일관되지 않습니다...잘못되었습니다.
iface br0 inet static
bridge_ports eth0 wlan1
address 10.10.1.1
network 10.10.1.0 <-------
netmask 255.0.0.0 <-------
broadcast 10.10.1.255 <-------
gateway 10.10.1.1
네트워크가 이고 10.10.1.0
브로드캐스트가 인 경우 10.10.1.255
넷마스크는 이어야 합니다 255.255.255.0
.
좋다:
iface br0 inet static
bridge_ports eth0 wlan1
address 10.10.1.1
network 10.10.1.0
netmask 255.255.255.0
broadcast 10.10.1.255
gateway 10.10.1.1
여기에서는 다음과 dhcp-range
같아야 합니다 /etc/dnsmasq.conf
.
dhcp-range=10.10.1.2,10.10.1.254,255.255.255.0,12h
정말로 더 많은 장치를 원하고 더 넓은 장치를 netmask
의도한 경우에는 잘못된 것이며 broadcast
수정하십시오.
iface br0 inet static
bridge_ports eth0 wlan1
address 10.10.1.1
network 10.10.1.0
netmask 255.0.0.0
broadcast 10.255.255.255
gateway 10.10.1.1
여기에는 다음과 같은 내용이 있을 dhcp-range
수 /etc/dnsmasq.conf
있습니다.
dhcp-range=10.10.1.2,10.255.255.254,255.0.0.0,12h
브리지 네트워킹도 사용하는 경우 이제 dnsmask의 인터페이스도 변경됩니다.
interface=br0
작동하도록 라우팅하려면 넷마스크/브로드캐스트를 수정하는 것 외에도 런타임에 라우팅하도록 커널에 지시해야 합니다.
sudo sysctl -w net.ipv4.ip_forward=1
재부팅할 때마다 활성화하려면 다음을 편집 /etc/sysctl.conf
하고 추가하세요.
net.ipv4.ip_forward=1
일부 운영 체제(예: iOS)는 (Wi-Fi) 연결 상태 확인의 일부로 인터넷 연결을 테스트합니다.