Mit Linux 2 Netzwerke nutzen - warum möglich?

Lance

Well-Known Member
Hallo,

als ich mein Duaboot Laptop mit Ubuntu gebootet habe ist mir aufgefallen dass ich mit WLAN ins Internet komme OBWOHL da über LAN noch ein zweiter Router hängt, an dem ich gerade über ein NAS Daten kopiere. Die IP vom LAN hat 192.168.1.101; die vom WLAN hat 192.168.178.24. Mit Windows und macOS geht das aber nicht! Bei den Systemen muss ich das LAN ausstecken damit ich über WLAN ins Internet kann. Kann mir das einer erklären?
 

morromett

Well-Known Member
als ich mein Duaboot Laptop mit Ubuntu gebootet habe ist mir aufgefallen dass ich mit WLAN ins Internet komme OBWOHL da über LAN noch ein zweiter Router hängt, an dem ich gerade über ein NAS Daten kopiere. Die IP vom LAN hat 192.168.1.101; die vom WLAN hat 192.168.178.24. Mit Windows und macOS geht das aber nicht! Bei den Systemen muss ich das LAN ausstecken damit ich über WLAN ins Internet kann. Kann mir das einer erklären?
Da wird mit Ubuntu, entweder nur eine default route über das wlan-Interface sein oder (was eigentlich automatisch nicht der Fall sein dürfte) die metric der default route via wlan-Interface ist besser (günstiger) als die metric der default route via lan-Interface.
Poste mal die Ausgaben von:
Code:
route -n
ip r
 

Lance

Well-Known Member
route -n
Code:
Kernel-IP-Routentabelle
Ziel            Router          Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.178.1   0.0.0.0         UG    600    0        0 wlo1
0.0.0.0         192.168.1.1     0.0.0.0         UG    20100  0        0 eno1
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 wlo1
192.168.1.0     0.0.0.0         255.255.255.0   U     100    0        0 eno1
192.168.178.0   0.0.0.0         255.255.255.0   U     600    0        0 wlo1

ip r
Code:
default via 192.168.178.1 dev wlo1 proto dhcp metric 600
default via 192.168.1.1 dev eno1 proto dhcp metric 20100
169.254.0.0/16 dev wlo1 scope link metric 1000
192.168.1.0/24 dev eno1 proto kernel scope link src 192.168.1.102 metric 100
192.168.178.0/24 dev wlo1 proto kernel scope link src 192.168.178.24 metric 600
 

morromett

Well-Known Member
route -n
Code:
Kernel-IP-Routentabelle
Ziel            Router          Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.178.1   0.0.0.0         UG    600    0        0 wlo1
0.0.0.0         192.168.1.1     0.0.0.0         UG    20100  0        0 eno1
Ja, es liegt an der metric. 600 (wlan) vs. 20100 (lan). Die metric (default route) für das lan-Interface muss m. E., hier absichtlich so hoch (d. h. ungünstig) gesetzt worden sein.
 

Lance

Well-Known Member
Interessant. Aber warum verweigern macOS und Windows die WLAN Verbindung dann komplett? Das habe ich nicht ganz verstanden. Findet da (by default) kein Routing statt ? Werde mal später unter macOS die gleichen Befehle eingeben.Mal sehen was da für Infos kommen.
 

Lance

Well-Known Member
So, habe den Mac mal mit angeschlossen - er geht nach wie vor erst dann (über WLAN, der andere Router über LAN hat KEIN Internet) ins Internet, wenn das LAN Kabel wieder getrennt ist!

Code:
Routing tables

Internet:
Destination        Gateway            Flags        Refs      Use   Netif Expire
default            192.168.1.1        UGSc           47        0     en0
default            192.168.178.1      UGScI           3        0     en1
127                127.0.0.1          UCS             0        0     lo0
127.0.0.1          127.0.0.1          UH              1      130     lo0
169.254            link#6             UCS             0        0     en0
169.254            link#7             UCSI            0        0     en1
192.168.1          link#6             UCS             2        0     en0
192.168.1.1/32     link#6             UCS             2        0     en0
192.168.1.1        d8:5d:4c:d7:c1:82  UHLWIir        20      141     en0   1142
192.168.1.7        a0:b3:cc:df:25:d1  UHLWIi          1        2     en0   1166
192.168.1.100/32   link#6             UCS             2        0     en0
192.168.1.255      ff:ff:ff:ff:ff:ff  UHLWbI          0        3     en0
192.168.178        link#7             UCS             0        0     en1
192.168.178.1/32   link#7             UCS             1        0     en1
192.168.178.1      dc:39:6f:bd:e:e5   UHLWIir         4       19     en1   1198
192.168.178.34/32  link#7             UCS             0        0     en1
224.0.0/4          link#6             UmCS            1        0     en0
224.0.0/4          link#7             UmCSI           0        0     en1
224.0.0.251        1:0:5e:0:0:fb      UHmLWI          0        0     en0
255.255.255.255/32 link#6             UCS             0        0     en0
255.255.255.255/32 link#7             UCSI            0        0     en1
 

morromett

Well-Known Member
So, habe den Mac mal mit angeschlossen - er geht nach wie vor erst dann (über WLAN, der andere Router über LAN hat KEIN Internet) ins Internet, wenn das LAN Kabel wieder getrennt ist!

Code:
Routing tables

Internet:
Destination        Gateway            Flags        Refs      Use   Netif Expire
default            192.168.1.1        UGSc           47        0     en0
default            192.168.178.1      UGScI           3        0     en1
Hier wird die metric evtl. nur über das Interface gezeigt und gesetzt. Versuch mal mit:
Code:
ifconfig
ifconfig en0 metric 20
ifconfig en1 metric 10
traceroute 1.1.1.1
 

CommanderZed

OpenBSD User
Teammitglied
Wenn du im LAN nur lokal aktiv sein möchtest kannst du die route auch einfach weglassen, eigentlich ist das das was ich sonst so mache, eine default route in dem Netz in dem ich routen möchte, die netze die ich nur lokal nutze dann ohne route.
 

midnight

OpenBSD & FreeBSD
Interessant. Aber warum verweigern macOS und Windows die WLAN Verbindung dann komplett? Das habe ich nicht ganz verstanden. Findet da (by default) kein Routing statt ? Werde mal später unter macOS die gleichen Befehle eingeben.Mal sehen was da für Infos kommen.
Meines Wissens nach kannst Du unter "Systemeinstellungen" -> "Netzwerk" -> "Reihenfolge der Dienste festlegen ..." einstellen, welche Verbindung priorisiert wird, wenn mehrere gleichzeitig vorhanden sind. Schiebe einfach "LAN" unter "WLAN" und dann sollte es passen.
 

morromett

Well-Known Member
BTW: Wenn man in Linux dhcp benutzt, kann es auch vom dhcp-Client abhängig sein, welches Interface für die default route bevorzugt wird. Beim dhcpcd ist es per default, immer das lan-Interface (weil es eine bessere metric zugewiesen bekommt, als das wlan-Interface). Z. B. aus der manpage des dhcpcd:
-m, --metric metric

Metrics are used to prefer an interface over another one, lowest wins. dhcpcd will supply a default metic of 200 + if_nametoindex(3). An extra 100 will be added for wireless interfaces.
 
Oben