네트워크 인터페이스의 이름이 eth0 대신 enp0s25 인 이유는 무엇입니까?


109

우분투 15.10을 설치 한 후 많은 스크립트가 작동을 멈추었고 수년간 ethx와 wlanx에 익숙해 졌을 때이 새로운 이름을 기억하는 데 어려움이 있습니다. 이 변경에 대한 이유가 있습니까? 이것에 익숙해 져야합니까, 아니면 그냥 이름을 바꾸고 이전의 eth0으로 돌아갈 수 있습니까?

$ ifconfig

enp0s25   Link encap:Ethernet  HWaddr 77:5a:5e:a6:86:d5  
      inet addr:192.168.31.239  Bcast:192.168.31.255  Mask:255.255.255.0
      inet6 addr: fe80::725a:b6ff:fea6:86d7/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:4833 errors:1332 dropped:0 overruns:0 frame:666
      TX packets:5589 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:3266446 (3.2 MB)  TX bytes:1046654 (1.0 MB)
      Interrupt:20 Memory:d3500000-d3520000

2
또한 자세한 내용에 대한 추가 링크가있는합니다.
Doug Smythies 19시 19 분

4
Ooooooooooooooor 스크립트를 한 번에 모두 수정하고 참조를 제거하고 (장치 이름을 결정하는 명령으로 변경) ;-) (여기에는 일부 포인터가 있습니다 : askubuntu.com/questions/396837/… )
Rinzwind

@Rinzwind 그것은 좋은 생각입니다.
Mike

@Mike 내 상사 (= 리드 코더)도 항상 그것에 동의하지만 그는 항상 하드 코딩 된 경로와 장치를 사용합니다 ... 나는 그를 계속 꾸짖습니다.)
Rinzwind

1
이것의 속임수
rugk

답변:


105

이것을 Predictable Network Interface 이름 으로 알려져 있으며 버전 15.04부터 Ubuntu가 전환 한 systemd의 일부입니다 .

기본 아이디어는 하드웨어 프로빙이 특정 순서로 발생하지 않고 재부팅간에 변경 될 수있는 이전 * nix 이름 지정 체계와 달리 인터페이스 이름은 하드웨어의 물리적 위치에 따라 다르며 , lspci보거나 lshw출력 하여 예측 / 추측 할 수 있습니다 . 반대로 pci 시스템에서 물리적 위치에 대한 정보를 추측 할 수 있습니다. 귀하의 경우 pci 버스 0, 슬롯 2입니다 . freedesktop.org 기사 에 따르면 실제로 인터페이스 이름을 지정하는 방법은 3 가지가 있습니다 : 온보드 카드 용 BIOS / 펌웨어 기반, PCI 정보 및 MAC 기반 인터페이스의 주소. 다른 예는 여기를 참조하십시오 .

freedesktop.org 페이지 에 따르면 예측 가능한 명명으로 전환하는 이유 중 하나는 부팅시 장치를 추가 및 제거 할 때 클래식 명명 규칙이 다중 인터페이스 시스템에서 소프트웨어 보안 위험을 초래할 수 있기 때문입니다. 또한 Sam Hanes 의 설명 에 따르면 , "이더넷 포트가 많은 대형 서버에서는 매우 유용합니다. 어떤 인터페이스가 어떤 포트로 연결되는지 하드웨어를 추가 또는 제거해도 다른 포트의 이름이 변경되지 않는다는 것을 즉시 알 수 있습니다."

다른 버전의 이름으로 되돌리려면 15.10 에서 네트워크 인터페이스 이름을 바꾸는 방법을 참조하십시오 .


40
나는 "predictable"이라는 단어에서 약간의 아이러니를 본다. 포인터에 감사한다.
Mike

11
"예측 가능", 예, 물론입니다. 15.10 (새로 설치, 이전 / 홈)으로 업그레이드 한 후 이더넷 연결이 끊어졌습니다. API와 규칙을 어기는 이유 이제 무엇이 잘못되었는지 알아 내야합니다. 나는 이것으로 매우 화가났다 :(
gorlok

13
실패는 예측 가능하다;)
Anwar

6
어, systemd개발자들 에게 말해 .
Sergiy Kolodyazhnyy

22
예측 가능한 이름 지정은 하나의 인터페이스 만있는 데스크탑 시스템에서 특히 유용하지 않으며,이 경우에는 다소 불쾌합니다. 많은 이더넷 포트가있는 큰 서버에서는 매우 유용합니다. 어떤 인터페이스가 어떤 포트로 연결되는지 알려주고 하드웨어를 추가 또는 제거해도 다른 포트의 이름은 변경되지 않습니다. 그것이 설계된 경우입니다.
Sam Hanes

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.