서로 다른 VLAN에 있지만 동일한 서브넷에있는 장치가 통신 할 수없는 이유는 무엇입니까?


22

전환에 대한 질문이 있습니다. IP 주소가 192.168.5.20 및 192.168.5.10 인 스위치에 연결된 두 개의 장치가 있습니다. 두 장치 모두 동일한 접두사 / 24를 갖습니다. 이는 이들이 동일한 서브넷에 있음을 의미합니다.

이러한 장치를 스위치의 다른 VLAN (10 및 20)으로 분할하면 동일한 서브넷에 있지만 통신하지 않습니다. 왜 그런 일이 발생합니까?


3
다른 Vlan간에 라우팅하려면 라우터가 필요합니다. 또한 그렇게 할 때 두 VLAN에 동일한 IP 서브넷을 가질 수 없습니다.

5
Jim Pap 님 안녕하세요. 환영합니다. 두 호스트를 "LAN 10"이라는 레이블이있는 스위치와 "LAN 20"이라는 레이블이있는 두 개의 다른 스위치에 꽂은 것과 같습니다. 스위치에서 VLAN을 구성하면 스위치가 여러 개의 가상 스위치로 나뉩니다.
조나단

3
이 질문은 다소 긴장된 것입니다. 그들은 의도적으로 할 수 없기 때문에 할 수 없습니다. 별도의 VLAN을 생성하면 교환 된 인터 네트워크가 논리적으로 분할됩니다. 이제 이러한 장치가 통신하려면 VLAN 간 라우팅 형식을 사용해야합니다.
WakeDemons3

1
@Cown Cisco 라우터 에서는 서로 다른 인터페이스에 동일한 서브넷의 주소를 가질 수 없지만 IP 주소를 신경 쓰지 않는 VLAN 자체와는 거의 관련이 없습니다 (예 : IPX / SPX). 그리고 ... 시스코는 중요한 배우가 아니지만 유일한 배우는 아닙니다.
JFL

1
@Cown 다른 VRF가 어떻게 도움이 될까요? 그들은 어쨌든 의사 소통을하지 않을 것이며, 귀하의 질문에 대답하기 위해 간단히 그 VLAN을 연결합니다. CCIE를 가져 오기 오래 전부터 20 년 전에 Cisco 라우터에서 브리징을 사용할 수있었습니다.
Matt Douhan

답변:


39

VLAN이하는 일 중 하나는 물리적 스위치를 사용하여 여러 개의 작은 "가상"스위치로 분리하는 것입니다.

하나의 스위치와 두 개의 VLAN에 대한 물리적 설명 :

여기에 이미지 설명을 입력하십시오

동일한 동작 동일한 토폴로지이 논리적으로 묘사 :

여기에 이미지 설명을 입력하십시오

두 번째 이미지의 IP 주소가 동일한 서브넷에 있더라도 두 가상 스위치 (예 : VLAN)간에 "링크"가 없으므로 호스트 A / B가 호스트 C와 통신 할 수있는 방법이 없습니다. /디.

두 번째 이미지의 호스트가 서로 통신하려면 한 "스위치"에서 다른 스위치로 쉽게 통신 할 수있는 장치가 필요합니다. 이를 위해 존재하는 장치는 라우터 이므로 트래픽이 VLAN 경계를 통과하려면 라우터가 필요합니다.

여기에 이미지 설명을 입력하십시오

라우터의 작동 방식으로 인해 각 라우터 인터페이스 에는 고유 한 고유 한 IP 서브넷 이 있어야합니다 . 그렇기 때문에 모든 VLAN에 전통적으로 고유 한 IP 서브넷 이 필요합니다. 이러한 VLAN 간에 통신이 이루어지면 고유 한 서브넷이 필요하기 때문입니다.


위의 이미지는 내 블로그에서 가져온 것으로, 여기 에서 개념으로 VLAN 에 대한 자세한 내용 및 여기 에서 VLAN 간 라우팅에 대한 자세한 내용을 읽을 수 있습니다 .


2
경고 : 트랩을 실제로 분할하지 마십시오. 그런 다음 태그가없는 포트를 통해 VLAN을 연결하십시오. 해당 스위치의 STP 및 CAM 구현이 어떻게 설정되어 있는지 정확히 알지 않는 한.
rackandboneman

1
@rackandboneman 좋은 조언입니다. 그러나 명확하게 말하면 내 게시물의 이미지는 하나의 물리적 스위치 만 나타냅니다 . "2 개의 스위치 이미지"는 2 개의 VLAN 이있는 하나의 물리적 스위치 를 논리적으로 나타낸 것입니다 .
Eddie

2
"각 라우터 인터페이스는 고유 한 고유 한 IP 서브넷을 가져야합니다.", 이는 일부 라우터 구현에 해당 될 수 있지만 보편적으로 적용되는 것은 아닙니다. 최소한 Linux에서는 동일한 서브넷을 여러 인터페이스에 할당 한 다음 프록시 arp와 / 32 경로를 조합하여 트래픽 흐름을 만들 수 있습니다.
피터 그린

@PeterGreen 예외는 항상 존재합니다. 무언가를 할 수 있다고해서 반드시 해야 한다는 것을 의미하지는 않으며, 현재 의 질문과 관련이있는 것도 아닙니다.
Eddie

29

가상 LAN의 요점은 단일 물리적 장치에 별도의 계층 2 LAN을 만드는 것입니다.

방에 방탄복과 방음벽을 쌓아 2 개의 방을 만드는 것과 같습니다. 방의 각 반에있는 사람들은 더 이상 이전 방의 다른 반에있는 사람들과 통신 할 수 없습니다.

따라서 서로 통신 할 수있는 별도의 L2 네트워크가없는 두 개의 호스트가 있습니다.

대부분의 경우 두 개의 서로 다른 VLAN에서 동일한 서브넷을 사용하는 것은 의미가 없습니다. 표준 사례는 IP 네트워크를 VLAN과 연결하는 것입니다.


내가 생각하는 곤경에있어 어떤 의미가 서로 다른 두 개의 VLAN에 동일한 서브넷을 사용하는 경우 경우. 라우터 인 척하고 192.168.5.15로 향하는 패킷을 얻습니다. 어떤 VLAN입니까?
Monty Harder

@MontyHarder에 따라 다릅니다. 어떤 네트워크 (가상 또는 비 네트워크)에서 왔습니까?
중복 제거기

1
@ 중복 제거기 패킷의 소스 IP가 왜 중요한지 잘 모르겠습니다. 둘 이상의 VLAN에 동일한 IP 범위를 사용하는 경우 IP의 VLAN이 무엇인지 어떻게 알 수 있습니까? 이해가되지 않습니다.
Monty Harder

@MontyHarder 나는 다음과 같은 경우를 가지고 있습니다 : 동일한 주소 지정을 사용하는 공급자와 상호 연결되어 있으며 동일한 스위치에서 이루어집니다. 서로 다른 라우터를 통해 둘 다 이야기하기 때문에 서로 대화하지 않기 때문에 괜찮습니다.
JFL

@MontyHarder 실제로, 여러 다른 LAN (및 VLAN)에 동일한 서브넷을 갖는 것이 매우 일반적입니다. RFC1918 개인 주소는 수백만 개의 LAN에서 재사용됩니다. 동일한 VLAN에 여러 개의 개별 NAT 네트워크가있을 수 있습니다. 호스팅 환경에서 광고 구역이 발생할 수 있습니다. 그러나 이러한 네트워크는 실제로 완전히 독립적 인 것으로 간주됩니다.
jcaron

5

IP 서브넷은 논리적으로 호스트를 그룹화합니다. 동일한 서브넷 내의 호스트는 계층 2 연결을 사용하여 서로 직접 통신합니다. 다른 서브넷의 호스트와 대화하려면 게이트웨이 / 라우터를 사용해야합니다.

VLAN은 물리적으로 호스트를 그룹화합니다. 동일한 VLAN / 브로드 캐스트 도메인 / L2 세그먼트 내의 호스트는 서로 직접 통신 할 수 있습니다. 다른 VLAN의 호스트는 할 수 없습니다. (나를 이길하지 마십시오- 물리적 그룹 은 실제로 정확하지 않지만 내 요점을 표시합니다.)

따라서 두 호스트가 동일한 IP 서브넷에 있지만 서로 다른 VLAN / 브로드 캐스트 도메인 / L2 네트워크에 있으면 통신 할 수 없습니다. 소스 호스트는 로컬 L2 네트워크 내에서 대상을 가정하므로 대상 주소 (또는 ARP)를 시도합니다. IPv6에 대한 NDP 확인).

ARP는 로컬 L2 네트워크에 요청을 브로드 캐스트로 보내고 요청 된 IP 주소가있는 호스트는 MAC 주소로 응답하여 작동합니다. 대상 호스트가 로컬 네트워크 외부 에 있으므로 ARP 요청을 듣지 않고 ARP가 실패합니다.

소스가 어떻게 든 목적지의 MAC 주소를 알고 해당 MAC으로 주소 지정된 프레임을 구축하더라도 L2 네트워크 외부에 있으므로 목적지에 도달하지 않습니다. 로컬 L2 네트워크 외부의 MAC은 의미가없고 쓸모가 없습니다.


3

설계 및 이론 관점의 질문을 다루는 기존 답변에 대한 보완 ...

묻는 대신 " 왜 그들이 의사 소통을하지? ",의 물어 보자 " 어떻게됩니까 가 통신 할 때?"

첫째, 스위치에서 VLAN을 구성한다는 것은 무엇을 의미합니까? 이 예에서는 VLAN 10으로 구성된 일부 소켓과 구성된 VLAN 20이 있습니다. VLAN의 정의는 동일한 VLAN의 소켓 만 연결되어 있다는 것입니다. 즉, 주어진 VLAN의 포트에서 수신 된 프레임은 동일한 VLAN의 포트로만 전송됩니다.

  10  10  20  20  10  20       VLAN of port
   1   2   3   4   5   6       Port number
===+===+===+===+===+===+===
   |   |   |   |   |   |
   A   B   C   D   E   F       Hosts

이 다이어그램에는 6 개의 호스트가 있으며 포트 1, 2, 5는 VLAN 10에 있고 포트 3, 4, 6은 VLAN 20에 있습니다.

질문에서 호스트 A가 정적으로 192.168.5.10/24로 구성되고 F가 정적으로 192.168.5.20/24로 구성되었다고 가정하십시오. B에서 E로 다른 정적 구성 주소가 있다고 가정하십시오 (무엇이든 상관 없습니다).

A가 192.168.5.20을 핑하는 경우, 동일한 / 24에 있다고 결정하므로 가장 먼저 발생하는 것은 ARP 요청입니다. WHO HAS 192.168.5.20은 이더넷 브로드 캐스트로 전송됩니다.

스위치는 포트 1에서 브로드 캐스트를 수신합니다.이 포트는 VLAN 10이므로 포트 2와 5, 브로드 캐스트 10의 다른 포트에서 브로드 캐스트를 보냅니다. 호스트 B와 E는 ARP 요청을 수신하고 주소가 아니므로 무시합니다.

그게 다야.

ARP 응답이 없습니다. 다음에 발생하는 일은 응용 프로그램이 포기할 때까지 A에 대한 시간 초과, 이후의 반복 ARP 요청입니다.

VLAN 10 포트 이외의 다른 장치에 연결된 호스트는 IP 주소에 관계없이 아무것도 볼 수 없습니다. 여기에는 192.168.5.20 인 F가 포함됩니다.


1

서브넷 마스킹에 대해 잘 알고 있어야합니다. 별도의 VLAN이있는 경우 서브넷이있는 고유 한 IP 주소 범위를 가져야합니다.

VLAN은 별도의 LAN이지만 가상입니다. 또한 동일한 스위치에서 네트워크를 분리하기위한 가상 LAN. 스위치에 별도의 브로드 캐스트 도메인을 만듭니다. 그러나 동일한 IP로 가상 LAN을 만들면 쓸모가 없습니다.

또한 스위치에서 Intervlan Routing을 구성해야합니다.


2
아니요 같은 서브넷을 가진 여러 VLAN을 가질 수는 없습니다. 비정상적이고 다소 낙담하지만 완전히 가능합니다.
JFL

@ JFL 사실, VRF 또는 다른 형태의 구분 기호를 사용하는 것이 가능하지만 아직 사용 사례를 보지 못했습니다. 제발 깨달아 줘

@JFL도 나와 같은 문제입니다. 방금 intervlan 라우팅과 함께 시스코 패킷 추적기에서 시도했습니다. Cisco 패킷 추적기에 문제가 있는지 모르겠습니다. 작동하지 않습니다. 나는 cown에 동의합니다. VRF에서 가능합니다.
인프라

1
@Cown 나는 그것이 좋은 생각이라고 말하지 않았고 그들이 서로 통신하게 만들 수는 없었습니다 (그러나 여전히 NAT로 가능합니다). 그러나 몇 가지 사용 사례가 있습니다. 예를 들어 중복 RFC1918 네트워크를 통과하는 공급자와 상호 연결되어 있습니다. 이들은 서로 다른 VLAN의 동일한 스위치에 연결되어 있으며 서로 통신하지 않습니다.
JFL

@ JFL 죄송 합니다만 나는 그것이 초기 질문과 어떻게 비교되는지 보지 못합니다. 예, 인터링크에 겹치는 IP 주소를 사용하거나 NAT를 사용하는 것이 가능하지만 실제 시나리오를 반영하지는 않습니다.

1

집에 LAN이 있고 IP 192.168.2.1이있는 컴퓨터가있을 때 발생하는 상황을 고려하십시오. 당신의 친구는 집에 LAN과 IP 192.168.2.2의 컴퓨터를 가지고 있습니다. 그들은 같은 서브넷에 있는데 왜 서로 대화 할 수 없습니까?

그러한 예에서, 원인은 당신이 요구하는 것과 다릅니다.

그러나 VLAN은 동일한 결과를 얻습니다. 두 번째 계층에서 네트워크를 분할합니다.

필자의 요점은 "IP 주소가 동일한 서브넷에있다"는 사실이 패킷간에 라우팅 할 수 있는지 여부를 결정하는 데 충분하지 않다는 것을 쉽게 알 수 있다는 것입니다. 기본 토폴로지에도 중요한 역할이 있습니다.

이것을 최하층으로 가져 가면 실제로 데이터를 전송하기 위해 물리적 물질 (well, okay 또는 air : D)이 필요합니다. 컴퓨터는 동일한 서브넷의 동일한 집에있을 수 있지만 물리적으로 연결되어 있지 않거나 무선 링크가 없을 수 있으므로 패킷이 라우팅되지 않을 것입니다.


0

VLAN의 요점은 네트워크 세분화입니다. 서브넷을 사용하여 동일한 (일부 경고를 제외하고) 달성 할 수도 있습니다. 서브넷이 2 개의 서로 다른 VLAN으로 분리되어 있으므로 장치는 L2 네트워크에서 통신 할 수 없습니다. 스위치간에 IRB 인터페이스를 설정하여 VLAN 간의 통신을 허용 할 수 있습니다. 또는 방화벽을 통해 트래픽을 라우팅하고 VLAN 간의 선택적 통신을 허용 할 수 있습니다. 이상적으로는 각 VLAN에 대해 서로 다른 서브넷을 갖도록 네트워크를 설계 한 다음 VLAN 간의 트래픽을 방화벽으로 차단해야합니다. 이것이 도움이되기를 바랍니다.


1
Nonononono는이 상황에서 IRB를 사용하지 않습니다. 문제는 스위치가 동일한 서브넷에서 두 개의 VLAN으로 구성되어서는 안된다는 것입니다. 가장 좋은 대답은 모든 호스트를 동일한 VLAN의 한 서브넷에 배치하는 것입니다.
Mike Pennington

0

이더넷 연결이 하나 이상의 VLAN을 전달하는 경우 해당 VLAN 중 하나를 제외한 모든 VLAN에 태그를 지정 해야합니다 . IEEE 802.1Q 호환 VLAN 태그는 일반적으로 프레임의 EtherType이있는 위치의 이더넷 프레임에 배치됩니다. VLAN 태그의 첫 번째 부분 은 0x8100의 상수 값인 태그 프로토콜 식별자 입니다. 결과적으로 IEEE 802.1Q 태그를 인식하지 못하거나 예상하지 않도록 구성된 장치는 태그가 지정된 프레임을보고 "이것은 IPv4, ARP 또는 IPv6이 아닙니다.이 Ethertype 0x8100은 완전히 다릅니다. "나는 그것을 전혀 이해하지 못한다고 생각합니다. 그냥 무시하는 것이 가장 좋습니다."

VLAN 지원 스위치는 VLAN 태그를 사용하여 각 포트로 나가는 패킷을 필터링 할 수 있으며 선택적으로 해당 포트에서 나가는 트래픽에 대해 하나의 선택된 VLAN에서 VLAN 태그를 제거 할 수 있습니다 (또한 해당 포트의 들어오는 트래픽에 VLAN 태그를 상호 추가 할 수 있음). 선택한 VLAN의 모든 트래픽이 해당 특정 포트에 연결된 장치에 대한 일반 pre.802.1Q 이더넷 트래픽으로 나타납니다. 이러한 선택된 VLAN 을 해당 포트 의 기본 VLAN 이라고합니다.

802.1Q 표준을 사용하면 이더넷 포트가 단일 기본 VLAN과 여러 태그가 지정된 VLAN을 동시에 지원할 수 있지만 태그가 지정된 태그와 태그가 지정되지 않은 이더넷 프레임을 동시에 통과하는 포트는 다소 바람직하지 않은 구성입니다. 포트 / NIC의 VLAN 중 하나는 다른 VLAN과 다르며 다르게 구성해야합니다. 실수하기 쉽다.

Cisco 용어에서 스위치 포트는 액세스 포트 또는 트렁크 포트 로 구성 할 수 있습니다 . 액세스 포트는 단일 VLAN에 대한 액세스 만 제공하며 VLAN 태그는 나가는 트래픽에서 자동으로 제거되어 해당 포트의 들어오는 트래픽에 추가됩니다. 반면 트렁크 포트는 구성 가능한 VLAN 세트에서 트래픽을 전달하지만 모든 트래픽에는 VLAN 태그가 지정됩니다.

따라서 동일한 스위치에서 두 개의 서로 다른 VLAN에있는 두 장치가 동일한 IP 서브넷의 주소를 사용하는 경우입니다. VLAN과 관련하여 스위치 포트 (및 장치의 네트워크 인터페이스)가 구성되는 방식에 따라 달라집니다.

1.) 포트를 VLAN을 인식하지 않는 장치 인 액세스 포트로 스위치 포트 : 스위치 포트는 "반대"VLAN의 트래픽을 필터링하므로 장치는 서로의 트래픽을 볼 수 없습니다. 이것은 그들이 "동일한 네트워크 세그먼트에있는 것"으로 생각하는 것이 합리적인지 아닌지에 대한 의문을 제기합니다.

2.) 트렁크 포트가 VLAN을 인식하지 못하는 장치를 VLAN으로 전달하도록 설정된 포트를 전환합니다. 각 장치는 "왜 다른 장치가 저에게 이상한 Ethertype 0x8100을 계속 전송합니까?"라고 생각하지 않습니다.

3.) 트렁크 포트로 스위치 포트는 각각 하나의 VLAN 만 통과하도록 설정하고 장치는 VLAN을 인식합니다. 장치의 네트워크 구성에서도 VLAN 번호를 지정해야하지만 최종 결과는 기본적으로 동일합니다. # 1 : 장치가 서로의 트래픽을 볼 수 없습니다.

4.) 트렁크 포트로 스위치 포트는 VLAN을 인식하지만 다른 VLAN으로 구성된 장치를 통과하도록 설정되었습니다. 이제는 장치 자체에서 필터링을 수행하는 VLAN 지원 계층이지만 실제 결과는 사례 # 1과 동일합니다. 그리고 # 3 : "반대"장치의 트래픽은 장치의 네트워크 프로토콜 스택에서 IP 프로토콜 계층에 도달하지 않습니다.

5.) 트렁크 인식 포트를 VLAN 포트로 구성된 장치와 장치에 구성된 두 VLAN을 모두 통과하도록 설정된 트렁크 포트로 전환합니다. 이것은 당신이 요구 한 것 이상입니다. 이제 장치가 두 VLAN 모두에 효과적으로 존재합니다.

두 VLAN은 이더넷 수준에서 서로 다른 것처럼 보이지만 동일한 IP 서브넷을 사용하므로 장치의 IP 라우팅이 구현 된 방식에 따라 달라집니다. 중요한 주요 세부 사항은 IP 스택이 강력한 호스트 모델 을 사용하도록 설계되었는지 또는 약한 호스트 모델 을 사용하도록 설계되었는지 와 VLAN의 개념이 시스템에 어떻게 통합되어 있는지에 대한 것입니다.

예를 들어, Linux는 구성된 태그가 지정된 VLAN을 기본 가상 NIC의 링크 상태를 반영하지만 기술적으로 가능한 독립적으로 작동하는 추가 가상 NIC로 제공합니다. 따라서 100 % 겹치는 IP 서브넷이있는 두 개의 개별 물리적 네트워크 세그먼트에 두 개의 NIC를 연결 한 것처럼 시스템은 들어오는 트래픽을 제대로 수신 할 수 있지만 대상 IP 서브넷에 연결된 NIC는 통신하기에 적합하다고 가정합니다. 해당 IP 서브넷의 다른 호스트이며 라우팅 테이블에서 먼저 발생하는 (가상, VLAN 별) NIC를 사용하므로 구성의 다양한 부분의 순서에 따라 구성이 작동하거나 작동하지 않을 수 있습니다. NIC 및 VLAN 구성이 초기화되었습니다. 당신은 리눅스를 사용해야합니다 '

레이어 2에서의 세그먼트 분리가 물리적 (= 실제로 분리 된 NIC)인지 논리적 (= VLAN으로 생성)에 관계없이 두 개의 서로 다른 세그먼트에서 동일한 IP 서브넷을 사용하는 것은 레이어 3 문제입니다. 레이어 3 문제에는 레이어 3 솔루션이 필요합니다. 라우터 또는 다른 상자를 사용하여 서브넷 중 하나를 대칭 NAT하여 IP 서브넷 겹침을 제거하는 것이 개별 장치에서 처리하는 것보다 훨씬 우아합니다.

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