Налаштування WiFi та Ethernet


44

Я борюся зі своєю конфігурацією мого Raspberry Pi. Я хочу досягти наступного:

eth0: буде використовуватися зі статичним ip і може підключатися лише до локальної мережі (це буде мій сервер NFS) wlan0: повинен підключатися до моєї бездротової мережі для доступу до Інтернету

Чомусь я не в змозі активувати обидва з'єднання одночасно (так, у мене хороший блок живлення). Ethernet відключить бездротовий зв'язок без жодної причини. Якщо я нарешті отримаю обоє, я не можу пінг 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

З повагою, і дуже дякую!


переконайтеся, що ви працюєте з останньою програмою та програмним забезпеченням. Я боровся за все на старій прошивці, вона вгамувала мене. модернізували все з нуля, і він вбудований молінням, і його дуже просто підняти
Piotr Kula

дякую вам за детальну інформацію про цю тему, мені вдалося реалізувати те, що було написано тут, і я змусив пі пі працювати з обома адаптерами.

1
Я думаю, що рішення слід розмістити як відповідь ...
jmc

1
Це погана форма і шкодить юзабіліті сайту, щоб "оновити питання, щоб включити відповідь". Вам слід опублікувати відповідь на власне запитання. Тоді це буде легко знайти для інших - і може залучати довіру від людей, яким вона допомагає
Ліндон Уайт

Відповіді:


25

Це стосується Raspbian Wheezy до 2015-05-05, щоб пізніше (та 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 (іноді без будь-якої причини він не запускатиметься). Ви також повинні вбити демона ifplugd на пристрої eth0:

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

І це має працювати!


3
Вам не потрібно відключати ціле ifplugd. Натомість просто відключіть (видаліть) порушуючу символьну посилання /etc/ifplugd/action.d/action_wpa, яка не дозволяє wlan0 працювати, коли Ethernet підключено.
minmaxavg

щоб відключити гарячу підключення пристрою eth0, чи не слід видаляти auto ethoрядки? Крім того, у мене все ще є:~ $ sudo service isc-dhcp-server start Job for isc-dhcp-server.
IggyPass

8

Якщо пристрій не має доступу до Інтернету чи іншого доступу за межами локальної підмережі, слід усунути шлюз. Перерахування шлюзу на обох інтерфейсах, ймовірно, є винуватцем.

Якщо Ethernet призначений для локальної підмережі, видаліть лише цей шлюз.


Тево Д правильно. Коли ваш eth0 підключений, у вас буде маршрут за замовчуванням (мережа 0.0.0.0) з інтерфейсу eth0, що призведе до того, що позамережевий трафік буде спрямований на ваш інтерфейс eth0 і перейшов у "біт-відро" .
HeatfanJohn

Ок, я зняв шлюз на eth0. Тепер я бачу, що мій бездротовий зв’язок (працює iwconfig), але коли я запускаю ifconfig, бездротовий не використовує статичну IP-адресу або шлюз, який я призначив (він залишається порожнім). Якась підказка на цьому?
DanFritz

Знайшли рішення, дякую за допомогу. Я оновив своє запитання з усіма файлами конфігурації (для інших людей)
DanFritz

@TevoD Я скористався вашою порадою, щоб прокоментувати шлюз. Він працює, але на 1 хвилину, потім відключений Wi-Fi. (Але Ethernet працює), чи можете ви мені допомогти
H.Ghassami
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.