Spraw, aby NetworkManager wolał Ethernet niż WiFi, jeśli oba są obecne

10

Podobne pytanie zostało zadane dla systemu Windows Automatycznie preferuj Ethernet zamiast WLAN, ale korzystam z systemu Linux i korzystam z NetworkManager.

W tej chwili, jeśli kabel Ethernet jest podłączony i jest dostępny, a połączenia Wi-Fi są również dostępne, NetworkManager wybiera połączenie Wi-Fi. Jak mogę to powiedzieć, aby zawsze wybierał połączenie przewodowe, jeśli jest dostępne?

Jestem na Fedorze 17, używając NetworkManager-0.9.4.0-9.git20120521

DanielFetchinson
źródło
Jestem w Fedorze 20 i mam ten sam problem. Wyłączenie WiFi wydaje się obejściem. Przynajmniej można to zrobić z górnego panelu (rozwijane menu użytkownika).
Brady Trainor

Odpowiedzi:

5

Kilka rzeczy:

Możesz wypróbować następujące polecenia w swoim środowisku, aby sprawdzić, czy działają i przynoszą pożądane rezultaty:

  • auto Ethernet
  • auto ethX (Zamień X na dowolny numer przypisany przez twoje jądro (uruchom ifconfig, aby sprawdzić))

Alternatywnie możesz sprawdzić znalezione trasy IP, wydając:

sudo route -n

Patrząc na wynik, sprawdź, czy wlan0 jest na wszystkich trasach.

Zostało zadanych kilka innych pytań, a jedynym sposobem na przekonanie Linuksa do faworyzowania interfejsu (domyślnie jest to eth0, ale w twoim przypadku coś poszło nie tak) to manipulowanie wskaźnikami.

Możesz skonfigurować metrykę dla interfejsu za pomocą ifmetric, który manipuluje metryką na określonym interfejsie. Nie testowałem tego na Fedorze per se, ale widzę, że jest w repozytoriach. Tak więc problem:

yum install ifmetric

Następnie, gdy zostanie zainstalowany, będziesz chciał przejść do:

/etc/network/interfaces

Użyj vi, nano, emacs, dowolnego edytora, którego używasz, a następnie dodaj pod dowolnym interfejsem, który chcesz skonfigurować (w tym przypadku eth0):

up ifmetric eth0 X

X odnosi się do liczby określającej priorytet, domyślnie 0 jest najwyższym priorytetem, ale aby uniknąć trafiania w trasy statyczne / domyślne, użyj czegoś powyżej 2. Wtedy będziesz chciał dodać wyższą liczbę do wlan0. Więc:

up ifmetric eth0 10

i poniżej wlan0:

up ifmetric wlan0 20

Twój plik powinien wyglądać następująco:

 iface eth0 inet dhcp
    up ifmetric eth0 10

iface wlan0 inet dhcp
    up ifmetric wlan0 20

Daj nam znać, jeśli to pomoże!

EDYCJA: Wystarczy kilka linków:

Jak skonfigurować maszynę z Linuksem, aby ignorowała Wi-Fi po podłączeniu przez LAN?

Jak ustawić priorytet połączeń sieciowych w Ubuntu?

EDYCJA 2:

W interfejsie GUI menedżera sieci znajduje się również pole metryczne!

Pełnomocnik
źródło