Urządzenia sieciowe nie pasują dokładnie do normalnego modelu odczytu / zapisu dla urządzeń (z wyjątkiem urządzeń blokujących sieć, które mają specjalne aplikacje), w systemie Linux nie są one dostępne /dev
. Nie oznacza to, że nie mogą być /dev/
włączone, żaden konkretny sterownik może utworzyć węzeł urządzenia, a narzędzia użytkownika mogą być używane do interakcji z nim (np. Przez ioctsl). W systemie Solaris urządzenia sieciowe są /dev
właśnie w tym celu.
To jest zwykle cytowane ( Linux Devices Drivers , 2nd Ed., 2001; Rozdział 14 Sterowniki sieciowe ).
Dyskutujemy teraz o sterownikach char i block i jesteśmy gotowi przejść do fascynującego świata sieci. Interfejsy sieciowe to trzecia standardowa klasa urządzeń z systemem Linux, a ten rozdział opisuje ich interakcję z resztą jądra.
[...]
Istnieje kilka ważnych różnic między zamontowanymi dyskami a interfejsami dostarczania pakietów. Na początek dysk istnieje jako specjalny plik w katalogu / dev, podczas gdy interfejs sieciowy nie ma takiego punktu wejścia. Normalne operacje na plikach (odczyt, zapis itd.) Nie mają sensu, gdy są stosowane do interfejsów sieciowych, więc nie można zastosować do nich uniksowego podejścia „wszystko jest plikiem”. Dlatego interfejsy sieciowe istnieją we własnej przestrzeni nazw i eksportują inny zestaw operacji.
Możesz zobaczyć, w jakich interfejsach są dostępne /proc/net/dev
, i możesz uzyskać dostęp do konfiguracji urządzenia i statystyk w /sys/class/net/
.
Jeśli zajrzysz do dokumentacji , nie zobaczysz żadnych normalnych urządzeń sieciowych, tylko TAP / TUN, PPP i urządzenia sieciowe .
Starożytnych, pre-1.0 wersje jądra linux nie tworzyć urządzenia w /dev
celach kontrolnych (to już dawno, dawno temu ... 1994 lub wcześniej). Jeśli skok w maszynę czasu i ryby z kopią MAKEDEV
z 1994 zobaczysz to obsługiwane /dev/ne[0-3]
, /dev/wd[0-3]
i inni, prawdopodobnie czcigodny NE2000 i klony. Zobacz ostatnie pytanie w §8.1 w wersji 1993 w Linux Ethernet HOWTO .
Zobacz także:
/unix/23199/why-are-network-interfaces-not-in-dev-like-other-devices