내 라즈베리 파이 구성에 어려움을 겪고 있습니다. 다음을 달성하고 싶습니다.
eth0 : 고정 IP와 함께 사용되며 로컬 영역 네트워크 (NFS 서버 임)에만 연결할 수 있습니다 wlan0 : 인터넷 액세스를 위해 무선 네트워크에 연결해야합니다
어떤 이유로 나는 동시에 두 연결을 모두 활성화 할 수 없습니다 (예, 좋은 전원 공급 장치가 있습니다). 이더넷은 아무런 이유없이 무선을 비활성화합니다. 마침내 두 가지를 모두 얻으면 google.com을 핑할 수 없습니다. 내 질문 어떻게 올바르게해야합니까? 인터페이스 파일에 다음이 있습니다.
auto lo
iface lo inet loopback
auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.1.101
netmask 255.255.255.0
gateway 0.0.0.0
#auto wlan0
allow-hotplug wlan0
iface wlan0 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
iface home inet static
address 192.168.0.157
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
iface default inet dhcp
감사합니다. 대단히 감사합니다!
답변
이는 2015-05-05 이전의 Raspbian Wheezy (및 Jessie / Stretch)에 적용 됩니다. 네트워킹 / WiFi / 고정 IP를 설정하는 방법을 참조하십시오.
커뮤니티에서 제안한대로 내 답변은 질문에서 추출되었습니다.
지금 당장 작동하므로 모든 구성 파일을 커뮤니티와 공유합니다. 먼저 wpa_supplicant.conf 파일을 살펴보십시오.
pi@raspberrypi ~ $ sudo cat /etc/wpa_supplicant/wpa_supplicant.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="****"
scan_ssid=1
proto=RSN
key_mgmt=WPA-PSK
pairwise=CCMP TKIP
group=CCMP TKIP
psk="****"
id_str="home"
priority=5
}
다음으로 새로운 업데이트 인터페이스 파일
pi@raspberrypi ~ $ sudo cat /etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.1.101
netmask 255.255.255.0
auto wlan0
allow-hotplug wlan0
iface wlan0 inet static
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
address 192.168.0.157
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
iface default inet dhcp
그리고 이제 까다로운 부분이되었으므로 eth0 장치의 핫 플러그를 비활성화해야합니다 (그렇지 않으면 wlan0이 비활성화됩니다). 다음 파일을 수정하여이 작업을 수행하십시오.
pi@raspberrypi ~ $ sudo cat /etc/default/ifplugd
INTERFACES="eth0"
HOTPLUG_INTERFACES="eth0"
ARGS="-q -f -u0 -d10 -w -I"
SUSPEND_ACTION="stop"
또한 시작 스크립트에 다음이 있습니다. 이는 Wi-Fi가 시작되도록합니다 (때로는 아무런 이유없이 시작되지 않습니다). 또한 eth0 장치에서 ifplugd 데몬을 종료해야합니다.
pi@raspberrypi ~ $ sudo cat /etc/rc.local
#!/bin/sh -e
# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
printf "My IP address is %s\n" "$_IP"
fi
# Disable the ifplugd eth0
sudo ifplugd eth0 --kill
sudo ifup wlan0
exit 0
그리고 그것은 작동해야합니다!
답변
장치에 로컬 서브넷 외부의 인터넷 액세스 또는 다른 액세스 권한이없는 경우 게이트웨이를 제거해야합니다. 두 인터페이스 모두에 게이트웨이를 나열하는 것은 범인 일 것입니다.
이더넷이 로컬 서브넷 용인 경우 해당 게이트웨이 만 제거하십시오.