batman-adv를 통해 메시 네트워크에 연결된 Raspberry Pi 3 3개가 있습니다. Raspberry Pi 중 하나에는 WIFI 어댑터가 있고 인터넷 게이트웨이입니다. 게이트웨이는 다음과 같이 구성됩니다. 다음 내용이 포함된 ~/start-batman-adv라는 파일:
#!/bin/bash
sudo batctl if add wlan0
sudo ifconfig bat0 mtu 1468
sudo batctl gw_mode server
sudo sysctl -w net.ipv4.ip_forward=1
sudo iptables -t nat -A POSTROUTING -o wlan1 -j MASQUERADE
sudo iptables -A FORWARD -i wlan1 -o bat0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i bat0 -o wlan1 -j ACCEPT
sudo ifconfig wlan0 up
sudo ifconfig bat0 up
/home/pi/start-batman-adv.sh &
/etc/rc.local 파일에 이 줄을 추가했습니다.
/etc/network/interfaces.d/wlan0
다음 파일을 추가했습니다.
auto wlan0
iface wlan0 inet manual
wireless-channel 4
wireless-essid RASPBERRY-MALLA
wireless-mode ad-hoc
터미널에서 다음 명령을 실행했습니다.
echo 'batman-adv' | sudo tee --append / etc / modules
echo 'denyinterfaces wlan0' | sudo tee --append /etc/dhcpcd.conf
그리고 /etc/wpa_supplicant/wpa_supplicant.conf
다음을 추가하세요:
network = {
ssid = "name of the wifi network"
scan_ssid = 1
psk = "password"
}
다른 두 개의 Raspberry Pi에는 파일을 제외하고 게이트웨이와 동일한 구성이 있습니다. ~/start-batman-adv
두 파일 모두에 다음이 있습니다.
#!/bin/bash
sudo batctl if add wlan0
sudo ifconfig bat0 mtu 1468
sudo batctl gw_mode client
sudo ifconfig wlan0 up
sudo ifconfig bat0 up
게이트웨이의 명령:
노드의 명령:
게이트웨이에는 인터넷이 있지만 노드에는 인터넷이 없습니까?