고유한 Mac과 인터페이스하기 위해 VLAN 추가 - 다양한 Linux 배포판에 대한 다양한 구문

고유한 Mac과 인터페이스하기 위해 VLAN 추가 - 다양한 Linux 배포판에 대한 다양한 구문

VLAN의 기존 인터페이스에 하위 인터페이스를 추가해야 합니다. 또한 하위 인터페이스에는 자체 MAC 주소가 있어야 합니다. 매뉴얼 페이지를 살펴보면 이 구문이 CentOS/RH에서 제대로 작동한다는 것을 알았습니다.

/usr/sbin/ip link add link eth0 name eth0.1 address 00:11:22:33:44:5F type vlan id 1

인터넷 검색을 통해 일부 배포판에서는 이 명령을 실행하기 위해 "vlan" 대신 "macvlan" 키워드를 사용한다는 것을 발견했습니다. vlan 키워드 대신 macvlan 키워드를 사용하는 Linux 배포판을 아는 사람이 있습니까?

답변1

ip다음 명령을 사용하여 VLAN MAC 주소를 할당 할 수 있습니다 .

# ip link add link <interface> name <vlan interface name> address <mac> type vlan id <vlan ID>

예:

# ip link add link ens33 name myvlan123 address 00:0c:29:ed:ff:ff type vlan id 123

확인하다:

# ip a
....
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:ed:ff:ea brd ff:ff:ff:ff:ff:ff
    inet 192.168.101.180/24 brd 192.168.101.255 scope global ens33
       valid_lft forever preferred_lft forever
3: myvlan123@ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 00:0c:29:ed:ff:ff brd ff:ff:ff:ff:ff:ff
    inet6 fe80::2fda:8335:9f2:b9c7/64 scope link 
       valid_lft forever preferred_lft forever

기본 인터페이스는 00:0c:29:ed:ff:ea현재 vlan입니다 00:0c:29:ed:ff:ff.

더 많은 도움말을 볼 수 있습니다:

# ip link help

또한 VLAN 커널 모듈이 로드되어 있는지 확인하십시오.

# lsmod | grep -i 8021q

일부 배포판은 vlan그 이름을 따서 명명될 수 있습니다. 설치 vlan8021q패키지(pacman, yum, apt, ..) 가 필요할 수도 있습니다 .

답변2

vlan과 macvlan은 서로 다른 두 가지입니다. VLAN은 브로드캐스트 도메인(802.1q)을 분리하기 위한 공통 표준입니다. 이는 물리적 네트워크에 여러 논리 네트워크를 생성할 수 있음을 의미합니다. 네트워크 스위치를 포함하여 사용되는 모든 구성 요소는 호환되어야 합니다.

Macvlan은 Linux 시스템에서 독립적인 가상 인터페이스를 제공하는 데 사용됩니다. 이는 물리적 인터페이스와 VLAN 인터페이스에서 생성될 수 있습니다. Macvlan은 비표준이며 다른 네트워크 장치와 관련이 없습니다.

먼저, 예시와 같이 VLAN 인터페이스를 생성해야 합니다. 그런 다음 다음과 같이 하나 이상의 macvlan 인터페이스를 추가해야 합니다.

ip link add macvlan1 link eth0.1 type macvlan
ip link add macvlan2 link eth0.1 type macvlan

명령을 사용하여 ip link새 인터페이스가 생성되었는지 확인합니다. 그렇다면 ip addr다음 명령을 사용하여 IP 주소를 할당하고 인터페이스를 불러와야 할 가능성이 높습니다.

ip link set dev macvlan1 up
ip link set dev macvlan2 up

질문에 따르면 예제에서는 vlan 1을 사용했습니다. 그러나 프로덕션 환경에서는 VLAN 1을 사용하지 마십시오. 일부 장치에서는 이 ID를 VLAN이 전혀 없는 것으로 해석할 수 있습니다.

Macvlan은 커널 2.6.23에서 실험용으로, 3.9에서는 프로덕션용으로 도입되었습니다. iproute2(ip 명령) 패키지는 오랫동안 macvlan을 지원해왔으므로 이는 Red Hat 6을 포함한 모든 최신 Linux 배포판에서 작동합니다.

관련 정보