Linux에서 eth 인터페이스에서 브리지 인터페이스로 IP를 이동해야하는 이유


27

네트워크 인터페이스 (예 : eth0)가 Linux 브리지 (예 : br0)에 추가되면 네트워킹이 제대로 작동하려면 IP 주소를 eth0에서 제거하고 br0에 추가해야합니다.

Linux 커널 구현 방식으로 인해 IP 주소 이동이 필요하다는 Open vSwitch 추가 정보 파일 (지금은 찾을 수 없음)을 읽었습니다. IP 주소를 NIC에서 브리지로 이동해야하는 Linux 구현은 무엇입니까?

답변:


10

NIC는 업 링크 케이블을 나타냅니다. 케이블은 레이어 3이 아닌 레이어 1입니다.

이제 Bridge는 서버에서 계층 2 (이더넷 / MAC) 및 / 또는 계층 3 (IP)에서 네트워크 트래픽 (들어오는)으로 처리되는 장치로 작동합니다.

따라서 ARP 요청에 응답하는 장치는 브리지입니다. 이는 해당 브리지의 다른 인터페이스로 트래픽을 분배해야하기 때문에 좋습니다.

응답 장치가 NIC 인 경우 트래픽이 브리지로 더 이상 전달되지 않습니다.

따라서 일부 안내서에서는 (업 링크) NIC에서 MAC을 제거하는 것이 좋습니다.


따라서 실제 Linux 메커니즘에 대해 말하면 (좋은 방법은 아닙니다) 인터페이스를 브리지 아래에 놓으면 더 이상 커널에서 L2 / L3 주소 지정 가능 인터페이스로 간주되지 않습니다. 권리 ? 아무것도 MAC / IP를 할당하는 것을 막을 수 없기 때문에 혼란 스럽습니다.
Jocelyn delalande

1
@Jocelyn 다른 방법. 여전히 L2 / 3로 주소를 지정할 수 있으면 다른 트래픽을 차단합니다. 따라서 다리에 있다면 직접 해결해서는 안됩니다.
Nils

알았지 만 기본적으로 포트는 L2에서 주소를 유지할 수 있습니다 (제거하지 않으면 MACaddr 유지). L2 트래픽이 브리지로 흐르는 이유는 무엇입니까?
Jocelyn delalande

2
@Jocelyn arp 요청에 응답하지 않는 한 모든 것이 2/3에 좋을 것입니다. 패킷을 캡처하지 않으면 커널의 네트워크 부분으로 패킷을 전달할 수 있습니다.
Nils

승인. 포트에 주소를 할당 할 때 약간의 트래픽이 끊어 졌음을 알 수 있습니다. 그러나 rp_filter로 인해 발생했습니다.
Jocelyn delalande

1

브리지는 여러 인터페이스가 브리지에있을 때 트래픽을 필요한 곳으로 분산시킵니다. 브리지의 개별 인터페이스는 브리지 3이 아닌 브리지가 결정한 내용에 따라 계층 2에서 작동하고 있습니다. 따라서 브리지 내의 개별 인터페이스가 아닌 브리지 전체를 처리하려고합니다.

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