В ifconfig -a не указано «eth0», только enp0s3 и lo

40

Итак, я установил свой Ubuntu box с VirtualBox, настройки по умолчанию - простой запуск ISO-образа. После установки Ubuntu я приступил к тестированию нескольких программ, и все работало нормально. У меня есть полный доступ к Интернету на моем хосте и внутри виртуальной коробки, ОДНАКО, я заметил, что даже с моим Ethernet-соединением у меня все еще нет eth0 - вместо этого у меня есть enp0s3, что странно.

Вот результат команды 'ifconfig -a':

enp0s3    Link encap:Ethernet  HWaddr 08:00:27:36:5f:f2  
          inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe36:5ff2/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:484 errors:0 dropped:0 overruns:0 frame:0
          TX packets:370 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:294211 (294.2 KB)  TX bytes:44269 (44.2 KB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:274 errors:0 dropped:0 overruns:0 frame:0
          TX packets:274 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:24496 (24.4 KB)  TX bytes:24496 (24.4 KB)

Любая причина, почему это может происходить? Как я могу заменить enp0s3 на eth0 и не иметь «10.0.2.15» в качестве адреса inet, как ясно, что это не должно быть так.

Джон Майерс
источник
2
Это изменилось в 15.10. Вы можете прочитать о том, как изменить это здесь. askubuntu.com/questions/689501/… По сути, это дубликат вашего вопроса, но система не позволит мне пометить его как таковой.
Органический мрамор
@ OrganicMarble вам нужно поднять один из ответов, иначе он не позволит вам пометить его как обманщика.
2015 г.
По сути, дубликаты, разнесенные по дням: askubuntu.com/q/704361/295286
Сергей Колодяжный

Ответы:

31

В версии v197 мы представили предсказуемые имена сетевых интерфейсов в systemd / udev, которые содержат информацию об оборудовании, а не ссылку на используемый драйвер. Поддерживаются следующие имена:

  • Имена , включающие прошивки / BIOS при условии номера индексов для бортовых устройств (например: eno1)
  • Имена , включающие прошивки / BIOS предусмотрено PCI Express индексных номеров слотов автоопределения (пример: ens1)
  • Названия , включающие физическое / географическое расположение разъема оборудования (например: enp2s0)
  • Имена интерфейсов , включающие MAC - адрес (пример: enx78e7d1ea46da)
  • Классический, непредсказуемое ядро родной ethX именование (пример: eth0)

То, что вы наблюдаете при установке 15.10, является следствием эволюции Ubuntu.

Takkat
источник
В то же время вы говорите об эволюции ядра, и все же вы говорите о / ссылка на Systemd. Так, кто сделал изменение? Ядро просто предлагает эти новые схемы именования, и Systemd активно выбирает использование одной из этих новых схем именования?
joonas.fi
1
@ joonas.fi Systemd внес изменения. Ядро по умолчанию будет называть все как eth0, eth1, eth2 и так далее. Пришел Systemd и сказал: «Это круто, но классическое наименование не помогает выяснить, какая карта, какая и к чему подключена».
Сергей Колодяжный
18

Если вам нужно установить статический IP-адрес виртуальной машины:

  1. Измените «Сетевой адаптер» на мостовой режим в системных настройках Oracle Ubuntu VM.

  2. Запустите Ubuntu VM

  3. Тип ifconfig

  4. ifconfig возвращает enp0s3и lo, следовательно,

  5. Введите sudo ifconfig enp0s3 192.168.0.111 netmask 255.255.255.0и вы установите статический IP-адрес виртуальной машины на 192.168.0.111.

16o1denRatio
источник