Dlaczego domyślny interfejs eth0 jest domyślnie wyłączony w CentOS?


43

Jestem już trochę zaznajomiony z dystrybucjami Linuksa, takimi jak Debian lub Ubuntu (tak, bardzo podobny), ale chciałem wypróbować system oparty na Red Hat - CentOS 6.2. Zainstalowałem go na moim hoście Windows 7 w virtualBox i próbowałem trochę z nim grać.

Natknąłem się na mały problem, a mianowicie: domyślny eth0interfejs jest domyślnie wyłączony. Korzystam z opcji z NAT (maszyna wirtualna jest „za” hostem). Nawet jeśli wprowadzę interfejs

ifconfig eth0 upto nie działa od razu. Otrzymuję to po uruchomieniu interfejsu:

Co jeszcze należy zrobić, aby skonfigurować sieć na komputerze CentOS?CentOS pokazuje wynik działania ifconfig.  Zauważ, że eth0 nie działa.

PS Przepraszam za zrzut ekranu, ale nie wiem, jak pobrać tekst z VirtualBox.


2
Nie ma eth1na zrzucie ... Btw, spróbuj uruchomić DHCP na interfejsie: dhclient eth0.
pbm

@pbm 1) Zmieniłem eth1na eth0w opisie. 2) dhclient eth0pracował :) dzięki. Jak mogę ustawić ją jako domyślną - uruchomić po ponownym uruchomieniu?
Patryk

Nie jestem pewien, ale sprawdź ten post na blogu: blog.malaya-digital.org/…
pbm

Odpowiedzi:


52

Edit /etc/sysconfig/network-scripts/ifcfg-$IFNAME. Zmień wartość ONBOOTlinii na yes.

$IFNAMEbędzie eth0na wielu urządzeniach EL6, ale na urządzeniach EL7 i EL6 korzystających ze spójnego schematu nazewnictwa urządzeń sieciowych może to być coś innego en3p1. Użyj polecenia, ip linkaby uzyskać listę interfejsów sieciowych, w tym tych, które są obecnie wyłączone.

W przyszłych instalacjach zwróć większą uwagę. Zdmuchnąłeś opcję w sekcji konfiguracji sieci, która pozwala ci powiedzieć, żeby uruchomił interfejs. Ta opcja przy rozruchu jest domyślnie wyłączona w EL6 i EL7, podczas gdy we wcześniejszych wersjach była domyślnie włączona.

Aby interfejs sieciowy pojawiał się przy pierwszym uruchomieniu w czasie instalacji w EL7, przejdź do zakładki ConfigureGeneralna ekranie konfiguracji sieci, a następnie zaznacz pole oznaczone Automatically connect to the network when available.

Jeśli chodzi o to, dlaczego to zmienili, zgaduję ze względów bezpieczeństwa. Daje to szansę na nieco zaostrzenie ustawień domyślnych przed pierwszym uruchomieniem interfejsu sieciowego.


Właśnie te informacje, których szukałem. Dziękuję Ci!
SamAndrew81

8

Jeśli nie masz serwera DHCP w sieci, musisz ustawić statyczny adres IP. Rozważ następujący przykład:

vim /etc/sysconfig/network-scripts/ifcfg-eth0

BOOTPROTO=none
DEVICE=eth0
IPADDR=192.168.1.10 # your IP address
NETMASK=255.255.255.0 # your netmask
NETWORK=192.168.1.0 
ONBOOT=yes

Dodaj BRAMA do swojego /etc/sysconfig/networkpliku:

NETWORKING=yes
NETWORKING_IPV6=yes
HOSTNAME=hostname.domainname
GATEWAY=192.168.1.1 # your gateway

Wydaj następujące polecenie, aby uruchomić sieć podczas rozruchu:

chkconfig network on

Uruchom ponownie usługę sieciową:

service network restart

Spójrz na swoje interfejsy sieciowe

ifconfig

5

Nie wspomniałeś, jakiej wersji CentOS używasz. Jeśli się nie mylę, 6.x domyślnie używa NetworkManager.

Rzadko instaluję okna X na moich serwerach, więc NetworkManager to dla mnie tylko problem. Wyłączam go i włączam standardową usługę „sieciową”.

chkconfig NetworkManager wyłączony
sieć chkconfig włączona

usługa NetworkManager zatrzymać
uruchomienie sieci serwisowej

Aby włączyć DHCP w interfejsie, uruchom system-config-network, edytuj odpowiednie urządzenie, zapisz i uruchom ponownie usługę sieciową. Alternatywnie możesz edytować /etc/sysconfig/network-scripts/ifcfg-eth0i dodawać

ONBOOT=yes
BOOTPROTO=dhcp

Zapisz zmiany i uruchom ponownie usługę sieciową.


1

Z tego, co zebrałem podczas eksperymentowania i czytania, zgadzam się z innym, że Network Manager wydaje się domyślnie ładować, ale usługa sieciowa nie.

Kiedy ostatnio miałem uruchamianie hosta VM bez wyświetlania eth0 w danych wyjściowych ifconfig, było tak dlatego, że miałem uruchomionego Network Managera, sieć nie działała i NM_CONTROLLED=now moim /etc/sysconfig/network-scripts/ifcfg-eth0pliku.

Jak tylko uruchomiłem service network restart, eth0 pojawił się w wyjściu ifconfig. Ponowne uruchomienie spowodowało jednak, że ponownie zniknął.

Rozwiązaniem dla mnie wydaje się być ustawienie NM_CONTROLLED=now /etc/sysconfig/network-scripts/ifcfg-eth0, a następnie włączeniu usługi sieciowej przy starcie ( chkconfig network onjak Uthera i alexnorthsoul punktu wyjścia). Prawdopodobnie mógłbym (powinienem?) Domyślnie wyłączyć NetworkManagera, ale teraz działa on dla mnie i denerwuję się dotykaniem czegokolwiek innego.

Nawiasem mówiąc, moim celem było, aby system honorował moje wybrane statyczne IP. Kiedy zostawiłem uruchomiony NetworkManager i ustawiłem NM_CONTROLLED=yes(lub go pominąłem), w ifconfig pojawił się komunikat eth0, ale był to adres DHCP, a nie mój statyczny adres IP. Wyłączenie NetworkManagera oszczędzało mi DHCP, a włączenie sieci spowodowało załadowanie moich ustawień, które obejmowały statyczny adres IP.

Nie jestem administratorem systemu, ale raczej programistą, więc nie są to słowa eksperta CentOS, a jedynie osoba, która przetrwała konfigurowanie maszyn wirtualnych, których potrzebowałem.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.