PCI 슬롯을 사용하는 Ubuntu 네트워크 인터페이스 이름은 일관됩니다.

PCI 슬롯을 사용하는 Ubuntu 네트워크 인터페이스 이름은 일관됩니다.

.mac 주소를 수정하여 일관된 인터페이스 이름 지정을 설정할 수 있습니다 /etc/udev/rules.d/70-persistent-net.rules.

  • PCI 슬롯 번호 지정을 통해 일관된 인터페이스 이름 지정을 설정할 수 있습니까? (시도했지만 실패)
  • MAC 주소 외에 일관된 인터페이스 이름 지정을 정의하는 다른 방법이 있습니까?

우분투 14.04를 사용하고 있습니다.


4포트 NIC를 맨 위의 pci 슬롯에 연결하면 70-persistent-net.rules각 pci 슬롯을 수정할 수 없습니다.

$ lspci -D grep -i 에테르 |

0000:04:00.0 Ethernet controller: Intel Corporation 82576 Gigabit Network Connection (rev 01)
0000:04:00.1 Ethernet controller: Intel Corporation 82576 Gigabit Network Connection (rev 01)
0000:05:00.0 Ethernet controller: Intel Corporation 82576 Gigabit Network Connection (rev 01)
0000:05:00.1 Ethernet controller: Intel Corporation 82576 Gigabit Network Connection (rev 01)
0000:0b:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection
0000:0c:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection

이것은 내가 사용하는 파일입니다./etc/udev/rules.d/70-persistent-net.rules

# This file was automatically generated by the /lib/udev/write_net_rules
# program, run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single
# line, and change only the value of the NAME= key.


# PCI device 0x8086:0x10d3 (e1000e)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="aa:bb:cc:dd:ee:ff", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

# PCI device 0x8086:0x10d3 (e1000e)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:aa:bb:cc:dd:ee", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

SUBSYSTEM=="net", ACTION=="add", KERNELS="0000:04:00.0", NAME="eth2"
SUBSYSTEM=="net", ACTION=="add", KERNELS="0000:04:00.1", NAME="eth3"
SUBSYSTEM=="net", ACTION=="add", KERNELS="0000:05:00.0", NAME="eth4"
SUBSYSTEM=="net", ACTION=="add", KERNELS="0000:05:00.1", NAME="eth5"

이제 동일한 슬롯에 2포트 네트워크 카드를 연결하면 다음과 같습니다.

0000:02:00.0 Ethernet controller: Intel Corporation 82580 Gigabit Fiber Network Connection (rev 01)
0000:02:00.1 Ethernet controller: Intel Corporation 82580 Gigabit Fiber Network Connection (rev 01)
0000:06:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection
0000:07:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection

PCI 슬롯 번호가 변경된 것을 확인할 수 있습니다.

답변1

/etc/udev/rules.d/70-persistent-net.rules다음과 유사한 줄이 포함된 파일이 있어야 합니다 .

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="04:01:07:ab:6e:01", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

이 파일(외부)을 백업 rules.d하고 원본 파일을 다음과 같이 편집합니다.

SUBSYSTEM=="net", ACTION=="add", KERNELS=="0000:00:03.0", NAME="eth0"

KERNELS첫 번째 열에서 값을 수집할 수 있는 곳lspci -D

0000:00:03.0 Ethernet controller: Red Hat, Inc Virtio network device

위의 PCI 주소가 분해되어 Domain:Bus:Slot.Function위의 장치가 슬롯 3에 설치됩니다.


노트:이 글을 작성하는 동안 제가 사용하고 있는 가상머신의 콘솔에 접근할 수 없어서(SSH를 통해 연결되어 있습니다), 문제가 생기면 잠기게 되어 확인할 수가 없습니다. 요점 - 원격 시스템에서 자신을 잠글 수 있으므로 이 작업을 수행할 때 주의하십시오. 로컬 시스템에서는 문제가 없습니다.

관련 정보