Skip to main content

Bridging and Switching

Summary

bridge_diagram.png


이더넷 유사 네트워크(이더넷, Ethernet over IP, IEEE 802.11의 AP 브리지 또는 브리지 모드, WDS, VLAN)는 MAC 브리지 기능을 사용하여 서로 연결될 수 있습니다. 브리지 기능은 서로 다른 LAN에 연결된 호스트를 단일 LAN에 연결된 것처럼 상호 연결할 수 있으며(EoIP를 사용하면 지리적으로 분산된 네트워크도 IP 네트워크 간 연결이 존재하는 경우 브리지될 수 있음), 이 경우 호스트들은 단일 LAN에 연결된 것처럼 작동합니다. 브리지은 투명하기 때문에 트레이서루트 목록에 나타나지 않으며, 브리지된 LAN에 연결된 호스트와 다른 LAN에 연결된 호스트를 구분할 수 있는 유틸리티는 없습니다. 그러나 LAN이 상호 연결된 방식에 따라 호스트 간의 지연 시간과 데이터 전송 속도가 달라질 수 있습니다. 

복잡한 토폴로지에서 네트워크 루프가 발생할 수 있습니다(고의적이든 아니든). 특수한 처리 없이 루프는 네트워크가 정상적으로 작동하지 못하게 합니다. 이는 눈사태처럼 패킷이 급증하는 현상을 일으키기 때문입니다. 각 브리지는 루프를 방지하는 방법을 계산하는 알고리즘을 실행합니다. (R/M)STP는 브리지들이 서로 통신할 수 있도록 하여 루프가 없는 토폴로지를 협상할 수 있게 합니다. 루프를 형성할 수 있는 모든 대체 연결은 대기 상태로 전환되며, 주 연결이 실패할 경우 다른 연결이 그 자리를 대신할 수 있습니다. 이 알고리즘은 네트워크 토폴로지의 변경 사항에 대한 최신 정보를 모든 브리지에 전달하기 위해 구성 메시지(BPDU - Bridge Protocol Data Unit)를 주기적으로 교환합니다. (R/M)STP는 다른 브리지의 포트 차단 및 개방과 같은 네트워크 재구성 작업을 담당하는 루트 브리지를 선택합니다. 루트 브리지는 가장 낮은 브리지 ID를 가진 브리지입니다.


브리지 인터페이스 설정

여러 네트워크를 하나의 브리지로 결합하려면 브리지 인터페이스를 생성해야 합니다. 이후 원하는 모든 인터페이스를 해당 브리지의 포트를 설정해야 합니다. 기본적으로 브리지 MAC 주소는 브리지 포트 구성에 따라 자동으로 선택됩니다. 원하지 않는 MAC 주소 변경을 방지하려면 “auto-mac”을 비활성화하고 “admin-mac”을 사용하여 MAC 주소를 수동으로 지정하는 것이 권장됩니다.

하위 메뉴: /interface bridge

속성 설명
add-dhcp-option82 (yes | no; Default: no)

DHCP 패킷에 DHCP Option-82 정보(에이전트 원격 ID 및 에이전트 회로 ID)를 추가할지 여부. Option-82를 지원하는 DHCP 서버와 함께 사용하여 IP 주소를 할당하고 정책을 구현할 수 있습니다. 이 속성은 dhcp-snoopingyes로 설정된 경우에만 적용됩니다.

admin-mac (MAC address; Default: none)

브리지의 고정 MAC 주소. 이 속성은 auto-macno로 설정되었을 때만 적용됩니다.

ageing-time (time; Default: 00:05:00) 호스트의 정보가 브리지 데이터베이스에 얼마나 오래 보관됩니다.
arp (disabled | enabled | local-proxy-arp | proxy-arp | reply-only; Default: enabled)

주소 해결 프로토콜 설정

  • disabled- 인터페이스는 ARP를 사용하지 않습니다
  • enabled- 인터페이스는 ARP를 사용합니다
  • local-proxy-ARP- 라우터는 인터페이스에서 프록시 ARP를 수행하고 응답을 동일한 인터페이스로 전송합니다
  • proxy-ARP- 라우터는 인터페이스에서 프록시 ARP를 수행하고 응답을 다른 인터페이스로 전송합니다
  • reply-only- 인터페이스는 IP/ARP 테이블에 정적 항목으로 입력된 일치하는 IP 주소/MAC 주소 조합에서 발신된 요청에만 응답합니다. 동적 항목은 자동으로 IP/ARP 테이블에 저장되지 않습니다. 따라서 통신이 성공하려면 유효한 정적 항목이 이미 존재해야 합니다.
arp-timeout (auto | integer; Default: auto)

ARP 테이블에 ARP 기록이 IP 주소로부터 패킷을 받지 않은 후 얼마나 오래 유지되는지입니다. 값 autoip/settings 내의 arp-timeout 값과 동일하며, 기본값은 30초입니다.

auto-mac (yes | no; Default: yes)

auto-mac=yes가 설정되면 브리지 인터페이스의 MAC 주소를 다음 우선순위 순서에 따라 자동으로 선택합니다:

  1. 브리지에 속한 이더넷 인터페이스에서;
  2. 브리지 내의 비이더넷 인터페이스(예: Wi-Fi 또는 터널);
  3. 위 두 가지가 모두 사용할 수 없는 경우 무작위로 생성된 주소.

설정이 변경될 경우(예: 브리지에 새로운 포트를 추가할 경우), 브리지의 MAC 주소는 더 높은 우선순위의 주소 소스가 사용할 수 있게 될 때만 업데이트됩니다. 예를 들어, 브리지가 처음에 임의로 생성된 MAC 주소를 사용하다가 이더넷 인터페이스가 추가되면, MAC 주소는 가장 높은 우선순위(이 경우 이더넷 인터페이스)에 따라 업데이트됩니다. 브리지의 MAC 주소는 현재 MAC이 다른 브리지로 이동된 포트와 연결되어 있는 경우에도 업데이트됩니다.

현재 MAC 주소와 그 우선순위 수준은 저장되며 재부팅 후 재사용됩니다.

auto-mac=no가 구성되어 있는 경우, admin-mac 속성을 사용하여 정적 MAC 주소를 수동으로 설정할 수 있습니다.

comment (string; Default: ) 인터페이스의 간략한 설명.
dhcp-snooping (yes | no; Default: no)

브리지에서 DHCP 스누핑을 활성화하거나 비활성화합니다.

DHCP 스누핑 기능을 활성화하면 브리지의 fast-path가 비활성화되며, 이는 해당 브리지 통해 전송되는 연결의 fasttrack 기능을 영향을 미칩니다.

disabled (yes | no; Default: no) 브리지의 사용 여부를 변경합니다.
ether-type (0x9100 | 0x8100 | 0x88a8; Default: 0x8100)

EtherType을 변경합니다. 이 EtherType은 패킷에 VLAN 태그가 있는지 판단하는 데 사용됩니다. EtherType이 일치하는 패킷은 태그가 지정된 패킷으로 간주됩니다. 이 속성은 vlan-filteringyes로 설정되었을 때만 적용됩니다.

fast-forward (yes | no; Default: yes) Fast Path의 특수하고 빠른 버전으로, 2개의 인터페이스를 갖춘 브리지에서만 작동합니다(기본적으로 새 브리지에만 활성화되어 있습니다). 자세한 내용은 Fast Forward 섹션에서 확인할 수 있습니다.
forward-delay (time; Default: 00:00:15) 브리지 인터페이스의 초기화 단계(즉, 라우터 시작 후 또는 인터페이스 활성화 후) 동안 브리지 인터페이스가 정상적으로 작동하기 전에 리스닝/러닝 상태에서 소요되는 시간.
forward-reserved-addresses (yes | no: Default: no)

IEEE 예약된 멀티캐스트 MAC 주소가 01:80:C2:00:00:0x 범위 내에 포함되어 있는지 여부. R/M/STP 표준을 준수하는 브리지에서는 이러한 패킷을 전달하지 않아야 합니다. 이 속성은 protocol-modenone로 설정되었을 때만 적용됩니다.

예약된 MAC 주소의 전달을 활성화하면 이러한 주소에 의존하는 특정 프로토콜에 영향을 줄 수 있습니다. 투명 브리징 설정(예: 긴 링크 확장, 브리지를 미디어 컨버터로 사용, 네트워크 분석 수행)과 같이 절대적으로 필요한 경우에만 전달을 활성화하는 것이 좋습니다.

다음은 RouterOS에서 사용되는 몇 가지 주목할 만한 MAC 주소 및 프로토콜입니다.

흐름 제어 MAC 주소 01:80:C2:00:00:01은 예외로, 브리지에 의해 전달되지 않습니다.

frame-types (admit-all | admit-only-untagged-and-priority-tagged | admit-only-vlan-tagged; Default: admit-all)

브리지 포트에서 허용되는 프레임 유형을 지정합니다. 이 속성은 vlan-filteringyes로 설정되었을 때만 적용됩니다.

igmp-snooping (yes | no; Default: no) 브리지에서 멀티캐스트 트래픽이 모든 인터페이스로 과도하게 유입되는 것을 방지하기 위해 멀티캐스트 그룹 및 포트 학습을 활성화합니다.
igmp-version (2 | 3; Default: 2)

브리지 인터페이스가 IGMP 쿼리어로 작동할 때 IGMP 멤버십 쿼리가 생성될 IGMP 버전을 선택합니다. 이 속성은 igmp-snoopingmulticast-querieryes로 설정된 경우에만 적용됩니다.

ingress-filtering (yes | no; Default: yes)

VLAN 입력 필터링을 활성화하거나 비활성화합니다. 이 기능은 브리지 VLAN 테이블에 수신된 VLAN ID가 입력 포트에 속하는지 확인합니다. 기본적으로 브리지 VLAN 테이블에 존재하지 않는 VLAN은 전송(출력) 전에 드롭됩니다. 그러나 이 속성을 사용하면 패킷이 수신(입력) 시 드롭되도록 설정할 수 있습니다. 이 속성은 frame-types와 함께 사용해야 하며, 입력 트래픽이 태그가 지정되거나 지정되지 않도록 지정합니다. 이 속성은 vlan-filteringyes로 설정된 경우에만 적용됩니다. 이 설정은 RouterOS v7부터 기본적으로 활성화되어 있습니다.

l2mtu (read-only; Default: ) L2MTU는 이 인터페이스를 통해 전송할 수 있는 MAC 헤더가 없는 프레임의 최대 크기를 나타냅니다. L2MTU 값은 브리지에 의해 자동으로 설정되며, 연결된 모든 브리지 포트 중 가장 낮은 L2MTU 값을 사용합니다. 이 값은 수동으로 변경할 수 없습니다.
last-member-interval (time; Default: 1s)

브리지 포트에 연결된 마지막 클라이언트가 멀티캐스트 그룹에서 구독을 해제하고 브리지가 활성 쿼리어로 작동 중일 때, 브리지는 다른 클라이언트가 여전히 구독 중인지 확인하기 위해 그룹별 IGMP/MLD 쿼리를 전송합니다. 이 설정은 이러한 쿼리의 응답 시간을 변경합니다. 특정 시간 기간(last-member-interval * last-member-query-count) 동안 멤버십 보고서가 수신되지 않으면 멀티캐스트 그룹이 멀티캐스트 데이터베이스(MDB)에서 제거됩니다.

브리지 포트가 fast-leave로 구성되어 있다면, 멀티캐스트 그룹은 쿼리를 전송하지 않고 즉시 제거됩니다.

이 속성은 igmp-snoopingmulticast-querieryes로 설정된 경우에만 적용됩니다.

last-member-query-count (integer: 0..4294967295; Default: 2)

last-member-interval이 몇 번 지나야 IGMP/MLD 스누핑 브리지가 특정 멀티캐스트 스트림의 전달을 중단하나요? 이 속성은 igmp-snoopingmulticast-querieryes로 설정되었을 때만 적용됩니다.

max-hops (integer: 6..40; Default: 20)

MSTP가 활성화된 동일한 지역 내 네트워크에서 BPDU가 무시되기 전에 통과할 수 있는 브리지 수. 이 속성은 protocol-modemstp로 설정되었을 때만 적용됩니다.

max-learned-entries (integer: 0..4294967295 | auto | unlimited; Default: auto)

브리지 인터페이스에서 학습할 수 있는 호스트의 최대 수를 설정합니다. 기본값은 auto이며, 설치된 RAM 용량에 따라 결정됩니다. 기본값보다 높은 값을 설정하거나 unlimited 옵션을 선택할 수 있지만, 이 경우 메모리 부족 상태의 위험이 증가합니다.

특정 RAM 용량에 대한 기본값:

  • 8192 (64 MB);
  • 16384 (128 MB);
  • 256MB: 32768;
  • 512MB: 65536;
  • 1024MB 이상: 131072.

이 제한은 스위치 FDB 테이블의 하드웨어 제한이 아닌 브리지 인터페이스에 특정적으로 적용됩니다. 브리지 제한에 도달하더라도 스위치는 하드웨어 제한까지 호스트를 계속 학습하고 올바른 포워딩 결정을 내릴 수 있습니다. 그러나 이러한 추가 호스트는 “/interface bridge host” 테이블에 표시되지 않으며 모니터링도 불가능합니다. 또한 이 제한에 도달하면 MLAG 호스트 동기화에 영향을 줄 수 있습니다.

이 설정은 RouterOS 버전 7.16부터 사용할 수 있습니다.

max-message-age (time: 6s..40s; Default: 00:00:20)

BPDU 패킷의 Max Age 값을 변경합니다. 이 값은 루트 브리지에 의해 전송됩니다. 루트 브리지는 Max Age가 max-message-age 값으로 설정되고 Message Age가 0인 BPDU를 전송합니다. 모든 후속 브리지는 자신의 BPDU를 전송하기 전에 Message Age를 증가시킵니다. 브리지에서 Message Age가 Max Age와 같거나 더 큰 BPDU를 수신하면 해당 BPDU는 무시됩니다. 이 속성은 protocol-modestp 또는 rstp로 설정되었을 때만 적용됩니다.

membership-interval (time; Default: 4m20s)

다중 전송 데이터베이스(MDB)에 항목이 추가된 후 IGMP/MLD 멤버십 보고서가 브리지 포트에서 수신되지 않을 경우 해당 항목이 삭제되기까지의 시간입니다. 이 속성은 igmp-snoopingyes로 설정되었을 때만 적용됩니다.

mld-version (1 | 2; Default: 1)

MLD 멤버십 쿼리가 생성될 MLD 버전을 선택합니다. 이 설정은 브리지 인터페이스가 MLD 쿼리어로 작동할 때 적용됩니다. 이 속성은 브리지에 활성 IPv6 주소가 있고, igmp-snoopingmulticast-querieryes로 설정된 경우에만 적용됩니다.

mtu (integer; Default: auto)

최대 전송 단위(MTU)는 기본적으로 브리지에서 자동으로 설정되며, 연결된 브리지 포트 중 가장 낮은 MTU 값을 사용합니다. 브리지에 포트 추가 전 기본 브리지 MTU 값은 1500입니다. MTU 값은 수동으로 설정할 수 있지만, 브리지 L2MTU 또는 연결된 브리지 포트 중 가장 낮은 L2MTU를 초과할 수 없습니다. 새로운 브리지 포트가 추가되고 해당 포트의 L2MTU가 브리지의 actual-mtu(mtu 속성으로 설정된 값)보다 작은 경우, 수동으로 설정된 값은 무시되며 브리지는 mtu=auto가 설정된 것으로 간주됩니다.

브리지에 VLAN 인터페이스를 추가할 때 VLAN이 기본값 1500보다 높은 MTU를 사용하는 경우, 브리지의 MTU를 수동으로 설정하는 것이 권장됩니다.

multicast-querier (yes | no; Default: no)

멀티캐스트 쿼리어는 주기적으로 IGMP/MLD 일반 멤버십 쿼리를 생성하며, 이에 모든 IGMP/MLD 지원 장치는 IGMP/MLD 멤버십 보고서로 응답합니다. 일반적으로 PIM(멀티캐스트) 라우터나 IGMP 프록시가 이러한 쿼리를 생성합니다.

이 기능을 사용하면 IGMP/MLD 스누핑을 활성화한 브리지에서 IGMP/MLD 일반 멤버십 쿼리를 생성할 수 있습니다. 이 기능은 Layer 2 네트워크에 활성 쿼리어(PIM 라우터 또는 IGMP 프록시)가 없는 경우에 사용해야 합니다. Layer 2 네트워크에 멀티캐스트 쿼리어가 없으면 멀티캐스트 데이터베이스(MDB)가 업데이트되지 않으며, 학습된 항목이 시간 초과되어 IGMP/MLD 스누핑이 정상적으로 작동하지 않습니다.

태그가 없는 IGMP/MLD 일반 멤버십 쿼리만 생성됩니다. IGMP 쿼리는 IPv4 0.0.0.0 소스 주소로 전송되며, MLD 쿼리는 브리지 인터페이스의 IPv6 링크 로컬 주소로 전송됩니다. 외부 IGMP/MLD 쿼리어가 감지되면 브리지는 쿼리를 전송하지 않습니다(모니터링 값 igmp-queriermld-querier 참조).

이 속성은 igmp-snoopingyes로 설정된 경우에만 적용됩니다.

multicast-router (disabled | permanent | temporary-query; Default: temporary-query)

멀티캐스트 라우터 포트는 멀티캐스트 라우터 또는 쿼리어가 연결된 포트입니다. 이 포트에서는 등록되지 않은 멀티캐스트 스트림과 IGMP/MLD 멤버십 보고서가 전송됩니다. 이 설정은 브리지 인터페이스 자체의 멀티캐스트 라우터 상태를 변경합니다. 이 속성은 다중 브로드캐스트 라우팅 또는 프록시링을 위해 다중 브로드캐스트 라우터 상태를 브리지 인터페이스에 전송하는 데 사용할 수 있습니다. 이 속성은 igmp-snoopingyes로 설정된 경우에만 적용됩니다.

  • disabled - 브리지 인터페이스의 다중 브로드캐스트 라우터 상태를 비활성화합니다. 등록되지 않은 다중 브로드캐스트 및 IGMP/MLD 멤버십 보고서는 브리지 인터페이스에 전송되지 않습니다.
  • permanent- 브리지 인터페이스에서 멀티캐스트 라우터 상태를 활성화합니다. 등록되지 않은 멀티캐스트 및 IGMP/MLD 멤버십 보고서는 브리지 인터페이스 자체로 전송됩니다. 브리지 인터페이스에 구성된 설정과 무관합니다.
  • temporary-query- IGMP/MLD 쿼리를 사용하여 브리지 인터페이스의 멀티캐스트 라우터 상태를 자동으로 감지합니다.
name (text; Default: bridgeN) 브리지 인터페이스 이름.
port-cost-mode (long | short; Default: long)

브리지드 포트에 대한 포트 경로 비용 및 내부 경로 비용 모드를 변경하며, 인터페이스 속도에 따라 자동으로 설정된 값을 사용합니다. 이 설정은 수동으로 구성된 path-cost 또는 internal-path-cost 속성을 가진 브리지드 포트에는 영향을 미치지 않습니다. 아래는 특정 데이터 속도에 해당하는 경로 비용을 보여주는 예시입니다(중간 속도에 대한 비례 계산 포함):

Data rate Long Short
100 Gbps 200,000 19
50 Gbps 400 1
40 Gbps 500 1
25 Gbps 800 1
10 Gbps 2,000 2
1 Gbps 20,000 4
100 Mbps 200,000 19
10 Mbps 2,000,000 100

결합된 인터페이스의 경우, 모든 결합된 멤버 포트 중에서 가장 높은 경로 비용이 적용되며, 이 값은 결합의 총 링크 속도에 영향을 받지 않습니다.

가상 인터페이스(예: VLAN, EoIP, VXLAN) 및 Wi-Fi, 무선, 60GHz 인터페이스의 경우, 장거리 모드에는 경로 비용 20,000이 할당되며, 단거리 모드에는 10이 할당됩니다.

동적으로 브리지된 인터페이스(예: Wi-Fi, 무선, PPP, VPLS)의 경우, 경로 비용은 장거리 모드에 20,000, 단거리 모드에 10으로 기본 설정됩니다. 그러나 인터페이스를 브리지에 동적으로 추가하는 서비스에 의해 수동으로 재설정될 수 있습니다. 예를 들어 CAPsMAN의 datapath.bridge-cost 설정을 사용합니다.

port monitor를 사용하여 적용된 경로 비용을 관찰할 수 있습니다.

이 속성은 protocol-modestp, rstp, 또는 mstp로 설정되었을 때 적용됩니다.

priority (integer: 0..65535 decimal format or 0x0000-0xffff hex format; Default: 32768 / 0x8000)

브리지 우선순위는 R/STP에서 루트 브리지(root bridge)를 결정하는 데 사용되며, MSTP에서는 CIST 및 IST 지역 루트 브리지(regional root bridge)를 결정하는 데 사용됩니다. 이 속성은 protocol-modenone로 설정된 경우 효과가 없습니다.

protocol-mode (none | rstp | stp | mstp; Default: rstp)

스패닝 트리 프로토콜(STP) 또는 빠른 스패닝 트리 프로토콜(RSTP)을 선택하여 브리지된 LAN의 루프 없는 토폴로지를 보장합니다. RSTP는 토폴로지 변경 후 스패닝 트리 수렴 속도가 더 빠릅니다. MSTP를 선택하여 다중 VLAN 간 루프 없는 토폴로지를 보장합니다.

01:80:C2:00:00:0x 범위 내의 예약된 MAC 주소의 전달은 protocol-mode=none에서 분리되었으며, RouterOS v7.16부터 제어 가능한 속성 forward-reserved-addresses로 사용할 수 있습니다.

pvid (integer: 1..4094; Default: 1)

포트 VLAN ID(PVID)는 태그가 없는 입력 트래픽이 할당될 VLAN을 지정합니다. 이는 예를 들어 브리지 IP에서 전송되고 브리지 포트로 전송되는 프레임에 적용됩니다. 이 속성은 vlan-filteringyes로 설정되었을 때만 적용됩니다.

querier-interval (time; Default: 4m15s)

검출된 쿼리어 및 멀티캐스트 라우터 포트의 타임아웃 기간을 변경합니다. 이 속성은 igmp-snoopingyes로 설정된 경우에만 적용됩니다.

query-interval (time; Default: 2m5s)

브리지 인터페이스가 IGMP/MLD 쿼리어로 작동할 때 IGMP/MLD 일반 멤버십 쿼리가 전송되는 간격을 변경합니다. 이 간격은 마지막 시작 쿼리가 전송된 시점부터 적용됩니다. 이 속성은 igmp-snoopingmulticast-querieryes로 설정된 경우에만 적용됩니다.

query-response-interval (time; Default: 10s)

브리지(bridge)가 IGMP/MLD 쿼리어(querier)로 활성화되어 있을 때 일반 IGMP/MLD 쿼리에 대한 응답 시간이 변경됩니다. 이 속성은 igmp-snoopingmulticast-querieryes로 설정되어 있을 때만 적용됩니다.

region-name (text; Default: )

MSTP 지역 이름. 이 속성은 protocol-modemstp로 설정되었을 때만 적용됩니다.

region-revision (integer: 0..65535; Default: 0)

MSTP 구성 버전 번호. 이 속성은 protocol-modemstp로 설정되었을 때만 적용됩니다.

startup-query-count (integer: 0..4294967295; Default: 2)

브리지 인터페이스가 활성화되거나 활성 쿼리어 타임아웃 시 일반 IGMP/MLD 쿼리가 전송되어야 하는 횟수를 지정합니다. 이 속성은 igmp-snoopingmulticast-querieryes로 설정된 경우에만 적용됩니다.

startup-query-interval (time; Default: 31s250ms)

IGMP/MLD 일반 쿼리 간의 간격을 지정합니다. 이 속성은 igmp-snoopingmulticast-querieryes로 설정된 경우에만 적용됩니다.

transmit-hold-count (integer: 1..10; Default: 6) 포트 전송 상태 기계가 전송 속도를 제한하기 위해 사용하는 전송 대기 카운터.
vlan-filtering (yes | no; Default: no) 전역 브리지의 VLAN 기능을 활성화하거나 비활성화합니다.

특정 속성을 변경하면 브리지의 모든 포트가 일시적으로 비활성화될 수 있습니다. 생산 환경에서 이러한 속성을 변경할 때는 모든 패킷이 일시적으로 드롭될 수 있으므로 반드시 고려해야 합니다. 이러한 속성에는 vlan-filtering, protocol-mode, igmp-snooping, fast-forward 등이 포함됩니다.


예시

L2 패킷을 전달하는 브리지 인터페이스를 추가하고 활성화하려면:

[admin@MikroTik] > interface bridge add
[admin@MikroTik] > interface bridge print 
Flags: X - disabled, R - running 
0 R name="bridge1" mtu=auto actual-mtu=1500 l2mtu=65535 arp=enabled arp-timeout=auto mac-address=5E:D2:42:95:56:7F protocol-mode=rstp fast-forward=yes 
igmp-snooping=no auto-mac=yes ageing-time=5m priority=0x8000 max-message-age=20s forward-delay=15s transmit-hold-count=6 vlan-filtering=no 
dhcp-snooping=no 


브리지 모니터링

브리지 인터페이스의 현재 상태를 모니터링하려면 monitor 명령어를 사용합니다.

하위 메뉴: /interface bridge monitor

속성 설명
bridge-id (priority.MAC address) 로컬 브리지 식별자는 브리지 우선순위.브리지 MAC 주소 형식으로 구성됩니다.
current-mac-address (MAC address) 브리지의 현재 MAC 주소.
designated-port-count (integer) 지정된 브리지 포트 수.
declared-vlan-ids (integer 1..4094)

브리지 인터페이스에서 MVRP 프로토콜을 통해 설정된 VLAN.

fast-forward (yes | no) 브리지 fast-forward가 활성화되어 있는지 여부.
igmp-querier (none | interface & IPv4 address)

검출된 IGMP 쿼리어로부터 브리지 포트 및 소스 IP 주소를 표시합니다. 검출된 외부 IGMP 쿼리어만 표시되며, 로컬 브리지 IGMP 쿼리어(IGMP 프록시 및 PIM 포함)는 표시되지 않습니다. 모니터링 값은 igmp-snooping이 활성화되었을 때만 표시됩니다.

mld-querier (none | interface & IPv6 address)

검출된 MLD 쿼리어로부터 브리지 포트 및 소스 IPv6 주소를 표시합니다. 검출된 외부 MLD 쿼리어만 표시되며, 로컬 브리지 MLD 쿼리어는 표시되지 않습니다. 모니터링 값은 igmp-snooping이 활성화되어 있고 브리지에 활성 IPv6 주소가 있을 때만 표시됩니다.

mst-config-digest (integer) VLAN 매핑에서 MST 인스턴스 ID로 계산된 해시 값.
multicast-router (yes | no)

포트에 멀티캐스트 라우터가 감지되었는지 표시합니다. 모니터링 값은 igmp-snooping이 활성화되었을 때만 표시됩니다.

port-count (integer) 브리지 포트 수.
regional-root-bridge-id (priority.MAC address) 지역 루트 브리지 ID는 bridge-priority.bridge-MAC-address 형식으로 구성됩니다. 이 설정은 MSTP가 활성화된 경우에만 적용됩니다.
registered-vlan-ids (integer 1..4094)

브리지 인터페이스에 MVRP 프로토콜을 통해 등록된 VLANs.

root-bridge (yes | no) 스패닝 트리의 루트 브리지인지 여부를 표시합니다.
root-bridge-id (priority.MAC address) 루트 브리지 ID는 브리지 우선순위.브리지 MAC 주소 형식으로 구성됩니다.
root-path-cost (integer) 루트 브리지까지 경로의 총 코스트.
root-port (name) 루트 브리지에 연결된 포트.
state (enabled | disabled) 브리지의 state
[admin@MikroTik] /interface/bridge monitor bridge1
                    state: enabled                         
      current-mac-address: 2C:C8:1B:FF:92:F4               
                bridge-id: 0x1000.2C:C8:1B:FF:92:F4        
              root-bridge: yes                             
           root-bridge-id: 0x1000.2C:C8:1B:FF:92:F4        
  regional-root-bridge-id: 0x1000.2C:C8:1B:FF:92:F4        
           root-path-cost: 0                               
                root-port: none                            
               port-count: 2                               
    designated-port-count: 2                               
        mst-config-digest: d2b171a8ad95f593c241fc33d419a88c
             fast-forward: no                              
         multicast-router: no                              
             igmp-querier: none                            
              mld-querier: none                            
        declared-vlan-ids: 1                               
      registered-vlan-ids: 1                               


스패닝 트리 프로토콜

RouterOS 브리지 인터페이스는 루프가 없고 중복된 토폴로지를 보장하기 위해 스패닝 트리 프로토콜을 실행할 수 있습니다. 소규모 네트워크에서 브리지 2개만 있는 경우 STP는 큰 이점을 제공하지 않지만, 대규모 네트워크에서는 적절히 구성된 STP가 매우 중요합니다. STP 관련 값을 기본값으로 두면 단일 브리지 고장 시 네트워크가 완전히 연결되지 않을 수 있습니다. 루프가 없고 중복된 토폴로지를 달성하려면 브리지 우선순위, 포트 경로 비용, 포트 우선순위를 적절히 설정해야 합니다.

RouterOS에서는 브리지 우선순위를 0에서 65535 사이의 임의의 값으로 설정할 수 있지만, IEEE 802.1W 표준은 브리지 우선순위가 4096 단위로 설정되어야 한다고 규정합니다. 이로 인해 해당 값을 지원하지 않는 장치 간 호환성 문제가 발생할 수 있습니다. 호환성 문제를 방지하려면 다음 우선순위만 사용하도록 권장됩니다: 0, 4096, 8192, 12288, 16384, 20480, 24576, 28672, 32768, 36864, 40960, 45056, 49152, 53248, 57344, 61440

STP에는 여러 변형이 있으며, 현재 RouterOS는 STP, RSTP, MSTP를 지원합니다. 필요에 따라 이 중 하나를 사용할 수 있으며, 일부 장치는 하드웨어 오프로딩을 통해 이러한 프로토콜 중 일부를 실행할 수 있습니다. 해당 장치가 이를 지원하는지에 대한 자세한 정보는 하드웨어 오프로딩 섹션에서 확인할 수 있습니다. STP는 구형이고 느린 프로토콜로 간주되며, 모든 네트워크 토폴로지에서 RSTP로 거의 완전히 대체되었습니다. RSTP는 STP와 하위 호환됩니다. VLAN에 의존하는 네트워크 토폴로지에서는 VLAN 인식 프로토콜이며 VLAN 그룹별 부하 분산 기능을 제공하는 MSTP를 사용하는 것이 권장됩니다. STP를 지원하는 네트워크를 설계할 때는 많은 고려 사항이 필요하며, 자세한 사례 연구는 Spanning Tree Protocol 기사에서 확인할 수 있습니다. RouterOS에서 protocol-mode 속성은 사용되는 STP 변형을 제어합니다.

RouterOS 브리지(RouterOS bridge)는 PVST 및 그 변형과 호환되지 않습니다. PVST BPDU(MAC 목적지 01:00:0C:CC:CC:CD)는 RouterOS 브리지에서 일반적인 멀티캐스트 패킷으로 처리됩니다. 간단히 말해, RouterOS 브리지/스위치 포워딩 논리를 거쳐 태그가 추가되거나 제거될 수 있습니다.

IEEE 802.1ad 표준에 따르면, IEEE 802.1Q를 준수하는 브리지에서 전송된 BPDU는 IEEE 802.1ad 브리지와 호환되지 않습니다. 이는 단일 Layer2 도메인 내 모든 브리지에서 동일한 브리지 VLAN 프로토콜을 사용해야 한다는 의미이며, 그렇지 않으면 (R/M)STP가 정상적으로 작동하지 않습니다.

포트별 STP

특정 상황에서 단일 또는 다중 포트에서 STP 기능을 제한하고 싶을 수 있습니다. 아래에는 다양한 사용 사례에 대한 예시가 있습니다.

기본 (R/M)STP 기능을 변경할 때는 STP 및 BPDU의 작동 원리를 이해했는지 확인하십시오. 잘못 구성된 (R/M)STP는 예상치 못한 동작을 유발할 수 있습니다.

엣지 포트 생성

브리지 포트를 에지 포트로 설정하면 BPDU를 전송하지 못하며 수신된 BPDU를 무시합니다:

/interface bridge
add name=bridge1
/interface bridge port
add bridge=bridge1 interface=ether1 edge=yes
add bridge=bridge1 interface=ether2


수신된 BPDU가 드롭

브리지 필터 또는 NAT 규칙은 STP/RSTP/MSTP가 활성화된 브리지에서 BPDU의 특수 처리로 인해 BPDU를 드롭할 수 없습니다. 그러나 일부 스위치 칩에서는 ACL 규칙을 사용하여 특정 포트에서 수신된 BPDU를 드롭할 수 있습니다:

CRS3xx에서:

/interface ethernet switch rule
add dst-mac-address=01:80:C2:00:00:00/FF:FF:FF:FF:FF:FF new-dst-ports="" ports=ether1 switch=switch1

CRS1xx/CRS2xx에서 액세스 제어 목록(ACL)을 지원하는 경우:

/interface ethernet switch acl
add action=drop mac-dst-address=01:80:C2:00:00:00 src-ports=ether1


이 예시에서는 ether1 인터페이스에서 수신된 모든 BPDU가 삭제됩니다.

수신된 BPDU를 특정 포트에서 삭제하려면 해당 포트가 연결된 인터페이스에서 BPDU가 전송되지 않도록 반드시 방지해야 합니다. 루트 브리지는 항상 BPDU를 전송하며, 정상적인 상황에서는 더 우수한 BPDU(브리지 ID가 더 낮은 브리지에서 전송된 BPDU)를 기다리지만, 루트 브리지에서 지정된 브리지로 전환할 때는 새로운 루트 포트를 일시적으로 비활성화해야 합니다. 한쪽에서만 BPDU를 차단한 경우, 포트가 계속해서 플랩(flap) 상태가 됩니다.

BPDU 가드 활성화

이 예시에서 ether1이 BPDU를 수신하면 포트가 차단되며, 수동으로 재활성화해야 합니다.

/interface bridge
add name=bridge1
/interface bridge port
add bridge=bridge1 interface=ether1 bpdu-guard=yes
add bridge=bridge1 interface=ether2


루트 가드 활성화

이 예시에서 ether1restricted-role=yes로 구성되었습니다.이 설정은 해당 포트가 CIST 또는 어떤 MSTI의 루트 포트가 되는 것을 방지합니다. 이는 해당 포트의 최상위 스패닝 트리 우선순위 벡터와 무관합니다. 이러한 포트는 대체 포트(폐기 상태)로 선택되며, 더 우수한 BPDU를 계속 수신하는 한 해당 상태를 유지합니다. 더 이상 우수한 루트 경로를 감지하지 않으면 자동으로 포워딩 상태로 전환됩니다. 네트워크 관리자는 이 설정을 활성화하여 외부 브리지의 영향으로부터 활성 스패닝 트리를 보호할 수 있습니다.

/interface bridge
add name=bridge1
/interface bridge port
add bridge=bridge1 interface=ether1 restricted-role=yes
add bridge=bridge1 interface=ether2
[admin@MikroTik] /interface/bridge/port monitor [find]
                  interface: ether1                   ether2            
                     status: in-bridge                in-bridge          
                    port-id: 0x80.1                   0x80.2            
                       role: alternate-port           designated-port
                  edge-port: no                       yes           
        edge-port-discovery: yes                      yes            
        point-to-point-port: yes                      yes            
               external-fdb: no                       no             
               sending-rstp: yes                      yes            
                   learning: no                       yes            
                 forwarding: no                       yes            
           actual-path-cost: 2000                     2000           
    internal-root-path-cost: 2000                                    
       designated-bridge-id: 0x7000.64:D1:54:C7:3A:6E                
   designated-internal-cost: 0                        0              
         designated-port-id: 0x80.1                   0x80.2         
  designated-remaining-hops: 20                       20             
                 tx-rx-bpdu: 2/363                    4/1049         
        discard-transitions: 0                        0              
        forward-transitions: 0                        0              
                   tx-rx-tc: 0/2                      2/4            
           topology-changes: 0                        1              
       last-topology-change:                          34m53s         
           multicast-router: no                       yes            
           hw-offload-group: switch1                  switch1        
          declared-vlan-ids:                          
        registered-vlan-ids:       


브리지 설정

브리지 설정 메뉴에서는 모든 브리지 인터페이스의 특정 기능을 제어하고 글로벌 브리지 카운터를 모니터링할 수 있습니다.

하위 메뉴: /interface bridge settings