.iptables
MASQUERADE
이것이 브리지가 아닌 데에는 많은 기술적인 이유가 있다는 것을 알고 있지만 내가 해야 할 일은 유선 포트에서 eth0
Pi가 연결된 무선 네트워크로 네트워크 트래픽을 가져오는 것뿐입니다 wlan0
. 그러나 작동하지 않는 것 같습니다. Pi에서 인터넷에 액세스할 수 있지만 Pi를 통해 네트워크에 연결하려는 컴퓨터에서는 DNS가 실패합니다.
지시를 따르다여기, 다음 명령을 사용했습니다.
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
wlan0
활성화되자마자 작동하고 실행되기를 원하므로 절에 추가 /etc/network/interfaces
합니다 post-up
. Pi가 네트워크의 DHCP에서 게이트웨이를 올바르게 가져오지 못하는 것을 확인하여 동일한 명령문에서 게이트웨이를 수동으로 설정했습니다. 전체 내용은 다음과 같습니다 /etc/network/interfaces
.
auto lo
iface lo inet loopback
iface eth0 inet manual
allow-hotplug wlan0
iface wlan0 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
post-up route add default gw 10.110.0.11; echo "1" > /proc/sys/net/ipv4/ip_forward ; iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
/etc/dhcpcd.conf
다음 명령을 사용하여 Pi가 고정 IP를 갖도록 구성합니다.
interface eth0
static ip_address=192.168.0.5/24
static routers=192.168.0.5
static domanin_name_servers=8.8.8.8 8.8.4.4
그런 다음 연결을 수신하려는 컴퓨터에서 192.168.0.2
동일한 서브넷 마스크( 255.255.255.0
)를 사용하여 동일한 서브넷(내가 선택한)에 자체 IP를 갖도록 구성하고 게이트웨이를 로 설정합니다 192.168.0.5
. 내 컴퓨터에서 Pi를 볼 수 있지만(ping하고 ssh
연결할 수 있음) Pi를 통해 인터넷 연결을 수신하지 못하는 것 같습니다. 웹사이트에 액세스할 수 없고 DNS 조회가 실패합니다. 이 문제를 어떻게 해결할 수 있나요?
당신의 도움을 주셔서 감사합니다!
답변1
스스로 말했듯이 NAT(iptables를 통한 위장)를 사용한다고 해서 RaspPi가 브리지로 바뀌지는 않습니다. 기술적인 이유(WLAN 네트워크의 3주소 모드)로 인해 하드웨어에 상관없이 WLAN과 LAN을 브리지할 수 없습니다.
NAT가 수행하는 작업은 RaspPi 뒤의 LAN에서 들어오는 트래픽이 실제로 RaspPi 자체에서 발생하는 것처럼 가정하므로 WLAN은 각 호스트(RaspPi)만 볼 수 있습니다. 무선랜은 무슨 일을 하나요?아니요그것이 하는 일은 어떤 방식으로든 WLAN에서 LAN으로 레이어 2 브로드캐스트를 전달하는 것입니다. 그러나 이것이 DHCP에 필요한 것입니다.
아무리 조작해도 iptables
당신을 위해 그것을 할 수 없습니다.
그래서가장 쉬운 옵션RaspPi에서 DHCP 서버를 실행 중입니다. 그게 제가 한 일이고 정말 효과가 좋았습니다.
어떤 이유로든 당신이가지다WLAN의 DHCP 서버를 통해 제공되는 DHCP 정보를 사용하는 것은 이 방법으로만 검색할 수 있는 매우 특별한 사용자 정의 정보를 컴퓨터에 제공하기 때문에(가능성이 낮음) 조금 더 까다롭습니다. 여전히 제한 사항은 전체 어셈블리가 WLAN에서 단일 호스트로 나타나야 한다는 것입니다.WLAN_케이블호스트인 척하나의RaspPi LAN의 장치. 이는 Linux 네트워크 스택(및 iptables)을 우회하고 레이어 2 프레임을 직접 다시 작성하여 LAN과 WLAN 간에 전달하는 방식으로 작동합니다. 또한 WLAN에서 RaspPi에 액세스할 수 없게 됩니다.
그것으로 충분하지 않다면가지다여러 장치를 보유하는 유일한 방법은 WLAN에서 4주소 모드를 활성화하는 것입니다. 이건 지원이 필요해모두WLAN 장치에는 고유한 문제가 있으므로 이것이 실제로 최후의 수단입니다.