Tại sao các thiết bị không thể trên các Vlan khác nhau, nhưng trên cùng một mạng con, giao tiếp?


22

Tôi có một câu hỏi về chuyển đổi. Tôi có hai thiết bị được kết nối với một bộ chuyển mạch có địa chỉ IP 192.168.5.20 và 192.168.5.10. Cả hai thiết bị đều có cùng một tiền tố, / 24. Điều đó có nghĩa là chúng nằm trên cùng một mạng con.

Nếu tôi chia các thiết bị này trên các Vlan khác nhau (10 và 20) trên thiết bị chuyển mạch, nó sẽ không liên lạc mặc dù chúng nằm trên cùng một mạng con. Tại sao điều đó xảy ra?


3
Bạn cần một bộ định tuyến để định tuyến giữa các Vlans khác nhau. Ngoài ra, khi làm điều đó, bạn không thể có cùng một mạng con IP trên hai Vlans đó.

5
Xin chào Jim Pap và chào mừng ... Giống như bạn đã cắm hai máy chủ của mình vào hai công tắc khác nhau, một được gắn nhãn "LAN 10" và một cái khác có nhãn "LAN 20". Cấu hình Vlan trên công tắc của bạn chia công tắc của bạn thành nhiều công tắc, ảo ,.
jonathanjo

3
Câu hỏi này là một phần của tautology. Họ không thể bởi vì họ không thể, theo thiết kế. Việc tạo các Vlan riêng biệt phân chia hợp lý các mạng được chuyển đổi. Bây giờ bạn cần sử dụng một số hình thức định tuyến giữa các Vlan cho các thiết bị này để liên lạc.
WakeDemons3

1
@Cown trên bộ định tuyến của Cisco không thể có địa chỉ từ cùng một mạng con trên các giao diện khác nhau, nhưng điều này không liên quan gì đến bản thân Vlan mà không quan tâm đến địa chỉ IP (và có thể được sử dụng với IPX / SPX). Và ... Cisco là một diễn viên quan trọng nhưng khác xa với người duy nhất.
JFL

1
@Cown các VRF khác nhau sẽ giúp như thế nào? Dù sao họ cũng không liên lạc với nhau và để trả lời câu hỏi của bạn chỉ đơn giản là cầu nối các vlans, đơn giản như vậy. Cầu nối đã có sẵn trong các bộ định tuyến của Cisco từ rất lâu trước khi tôi lấy CCIE của mình và đó là hơn 20 năm trước
Matt Douhan

Câu trả lời:


39

Một trong những điều Vlan làm là thực hiện một chuyển đổi vật lý và chia chúng thành nhiều công tắc "ảo" nhỏ hơn.

Có nghĩa là mô tả vật lý này của một công tắc và hai Vlan:

nhập mô tả hình ảnh ở đây

giống hệt nhau trong hoạt động để mô tả logic này của cùng một cấu trúc liên kết:

nhập mô tả hình ảnh ở đây

Ngay cả khi các địa chỉ IP trong hình ảnh thứ 2 nằm trong cùng một Mạng con, bạn sẽ nhận thấy không có "liên kết" nào giữa hai công tắc ảo (ví dụ: Vlan), và do đó, không thể có khả năng Máy chủ A / B có thể giao tiếp với Máy chủ C / D.

Để các máy chủ trong hình ảnh thứ 2 giao tiếp với nhau, bạn sẽ cần một số loại thiết bị để tạo điều kiện giao tiếp từ "công tắc" này sang "công tắc" khác. Thiết bị tồn tại cho mục đích đó là Bộ định tuyến - do đó, Bộ định tuyến được yêu cầu cho lưu lượng truy cập để vượt qua ranh giới Vlan:

nhập mô tả hình ảnh ở đây

Và do cách thức hoạt động của Bộ định tuyến, mỗi giao diện bộ định tuyến phải có Mạng con IP duy nhất của riêng nó . Đó là lý do tại sao mọi Vlan theo truyền thống đều yêu cầu mạng con IP duy nhất của riêng nó - bởi vì nếu có bất kỳ giao tiếp nào xảy ra giữa các Vlan đó, các mạng con duy nhất sẽ được yêu cầu.


Các hình ảnh trên là từ blog của tôi, bạn có thể đọc thêm về Vlan như một khái niệm ở đây và về Định tuyến giữa các Vlan tại đây .


2
Bẫy cho người không sẵn sàng: Đừng cố thực sự phân chia một công tắc theo cách đó, THÌ kết nối các Vlan thông qua các cổng không có thẻ - trừ khi bạn biết chính xác cách triển khai STP và CAM trong công tắc đó được thiết lập.
rackandboneman

1
@rackandboneman Đó là lời khuyên tốt. Nhưng, một điểm rõ ràng, hình ảnh trong bài viết của tôi chỉ đại diện cho một chuyển đổi vật lý . "Hình ảnh hai công tắc" là biểu diễn logic của một công tắc vật lý có hai Vlan.
Eddie

2
"Mỗi giao diện bộ định tuyến phải có Mạng con IP duy nhất của riêng nó.", Điều đó có thể đúng với một số triển khai bộ định tuyến, điều đó không đúng. Ít nhất trên Linux, bạn có thể gán cùng một mạng con cho nhiều giao diện, sau đó sử dụng kết hợp các tuyến arp proxy và / 32 để tạo luồng lưu lượng giữa chúng.
Peter Green

@PeterGreen Ngoại lệ luôn tồn tại. Chỉ vì một cái gì đó có thể được thực hiện, không có nghĩa là nó nên được thực hiện - cũng không làm cho nó phù hợp với câu hỏi trong tầm tay.
Eddie

29

Toàn bộ điểm của Virtual LAN, là tạo các LAN lớp 2 riêng biệt trên một thiết bị vật lý.

Nó giống như xây dựng một bức tường bọc thép và âm thanh trong một căn phòng để tạo ra 2 phòng. Những người ở mỗi nửa phòng không thể liên lạc với những người ở nửa kia của phòng cũ.

Vì vậy, bạn có hai máy chủ trên hai mạng L2 riêng biệt mà không có bất cứ điều gì để cho phép chúng giao tiếp.

Lưu ý rằng trong hầu hết các trường hợp, sẽ không có ý nghĩa khi sử dụng cùng một mạng con trên hai Vlan khác nhau. Trường hợp tiêu chuẩn là liên kết mạng IP với Vlan.


Tôi khó có thể nghĩ về bất kỳ trường hợp nào khi sử dụng cùng một mạng con trên hai Vlan khác nhau có ý nghĩa. Giả sử bạn là một bộ định tuyến và bạn nhận được gói tin dành cho 192.168.5.15. Đó là Vlan nào?
Monty Harder

@MontyHarder Phụ thuộc. Nó đến từ mạng nào (ảo hay không)?
Ded repeatator

1
@Ded repeatator Tôi không chắc tại sao vấn đề IP nguồn của gói là gì. Làm thế nào để bạn biết Vlan một IP là gì nếu bạn đang sử dụng cùng một dải IP cho hai hoặc nhiều Vlan? Nó chỉ không có ý nghĩa.
Monty Harder

@MontyHarder Tôi có một trường hợp: Tôi có các kết nối với các nhà cung cấp sử dụng cùng một địa chỉ và chúng được thực hiện trên cùng một công tắc. Vì tôi nói chuyện với cả hai (thông qua các bộ định tuyến khác nhau) và họ không nói chuyện với nhau, điều đó rất tốt.
JFL

@MontyHarder Trên thực tế, rất phổ biến khi có cùng một mạng con trên nhiều mạng LAN khác nhau (và do đó là Vlan). Địa chỉ riêng RFC1918 được sử dụng lại trong hàng triệu mạng LAN. Bạn rất có thể có một số mạng NAT riêng biệt trên cùng một Vlan. Điều này có thể xảy ra nauseam quảng cáo trong môi trường lưu trữ. Nhưng những mạng đó thực sự được coi là hoàn toàn độc lập.
jcaron

5

Các mạng con IP máy chủ nhóm hợp lý - các máy chủ trong cùng một mạng con sử dụng kết nối lớp 2 của chúng để nói chuyện trực tiếp với nhau. Nói chuyện với máy chủ trên một mạng con khác yêu cầu sử dụng cổng / bộ định tuyến.

Các máy chủ nhóm Vlan vật lý - các máy chủ trong cùng một phân đoạn Vlan / domain / L2 có thể nói chuyện trực tiếp với nhau. Các máy chủ lưu trữ trong các Vlan khác nhau không thể. (Đừng đánh tôi - nhóm thể chất không thực sự đúng nhưng nó đánh dấu quan điểm của tôi.)

Vì vậy, khi hai máy chủ lưu trữ trong cùng một mạng con IP nhưng trên các Vlan / miền quảng bá / mạng L2 khác nhau, chúng không thể giao tiếp: máy chủ nguồn giả định đích đến trong mạng L2 cục bộ của nó và do đó nó cố gắng ARP địa chỉ đích (hoặc NDP giải quyết cho IPv6).

ARP hoạt động bằng cách gửi yêu cầu dưới dạng phát đến mạng L2 cục bộ và máy chủ lưu trữ với câu trả lời địa chỉ IP được yêu cầu với địa chỉ MAC của nó. Vì máy chủ đích nằm ngoài mạng cục bộ nên nó không bao giờ nghe thấy yêu cầu ARP và ARP không thành công.

Ngay cả khi nguồn nào đó sẽ biết địa chỉ MAC của đích và xây dựng một khung được gửi đến MAC đó, thì nó sẽ không bao giờ đến đích vì nó vẫn nằm ngoài mạng L2. MAC từ bên ngoài mạng L2 cục bộ là vô nghĩa và vô dụng.


3

Bổ sung cho các câu trả lời hiện có, bao gồm câu hỏi theo quan điểm thiết kế và lý thuyết ...

Thay vì hỏi " tại sao họ không giao tiếp? ", Hãy hỏi " điều gì xảy ra khi họ cố gắng giao tiếp?"

Đầu tiên, việc cấu hình Vlan trên switch có nghĩa là gì? Trong ví dụ của chúng tôi, có một số ổ cắm được cấu hình là Vlan 10 và một số Vlan được định cấu hình 20. Định nghĩa của Vlan là chỉ có các ổ cắm trên cùng một Vlan được kết nối. Điều đó có nghĩa là một khung nhận được trên một cổng trong một Vlan đã cho chỉ được gửi đến các cổng của cùng một 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

Trong sơ đồ này, chúng tôi có sáu máy chủ, các cổng 1, 2, 5 nằm trên Vlan 10, các cổng 3, 4, 6 nằm trên Vlan 20.

Giả sử máy chủ A được cấu hình tĩnh là 192.168.5.10/24 và F được cấu hình tĩnh là 192.168.5.20/24, từ câu hỏi. Giả sử B đến E có các địa chỉ cấu hình tĩnh khác (không quan trọng chúng là gì).

Nếu A ping 192.168.5.20, nó sẽ xác định nó ở cùng / 24, vì vậy điều đầu tiên xảy ra là yêu cầu ARP: WHO ĐÃ 192.168.5.20, được gửi dưới dạng phát ethernet.

Công tắc nhận được phát sóng trên cổng 1. Đây là Vlan 10, do đó, nó sẽ gửi quảng bá ra khỏi cổng 2 và 5, các cổng khác trong Vlan 10. Các máy chủ B và E nhận được yêu cầu ARP và bỏ qua vì đây không phải là địa chỉ của chúng.

Đó là nó.

Sẽ không có trả lời ARP; điều tiếp theo xảy ra sẽ là thời gian chờ trên A, tiếp theo là các yêu cầu ARP lặp lại tiếp theo, cho đến khi ứng dụng từ bỏ.

Một máy chủ được cắm vào bất cứ thứ gì ngoài cổng Vlan 10 sẽ không thấy gì cả, bất kể địa chỉ IP của nó là gì. Điều này rõ ràng bao gồm F, là 192.168.5.20.


1

Tôi hy vọng bạn có hiểu biết tốt về mặt nạ Subnet. Khi bạn có các Vlan riêng biệt, bạn phải có dải địa chỉ IP duy nhất với mạng con. Điều này không cần thiết.

Vlan là một mạng LAN riêng biệt nhưng nó là một mạng LAN ảo. Về cơ bản, để phân tách các Mạng trong cùng một Switch. Nó sẽ tạo ra miền quảng bá riêng trong chuyển đổi của bạn. Nhưng khi bạn tạo mạng LAN ảo với cùng một ip thì vô dụng.

Ngoài ra, bạn cần định cấu hình Định tuyến Intervlan trên thiết bị chuyển mạch của mình.


2
Không, không thể có nhiều Vlan với cùng một mạng con. Điều đó là bất thường và hơi nản lòng nhưng nó hoàn toàn có thể.
JFL

@JFL Đúng, có thể, sử dụng VRF hoặc một số hình thức phân tách khác, nhưng tôi chưa thấy trường hợp sử dụng nào cho việc này. Vui lòng làm sáng tỏ cho tôi.

@JFL vấn đề tương tự cho tôi là tốt. Bây giờ tôi chỉ thử trong trình theo dõi gói cisco, với định tuyến intervlan. Tôi không biết liệu có vấn đề với bộ kiểm tra gói của Cisco không. Nó không hoạt động. Tôi đồng ý với cown. có thể có trong VRF.
infra

1
@Cown Tôi không nói rằng đó là một ý tưởng hay và cũng không thể khiến họ giao tiếp với nhau (nhưng vẫn có thể với NAT). Nhưng tôi có một số trường hợp sử dụng. Ví dụ: tôi có kết nối với các nhà cung cấp đi qua một số mạng RFC1918 chồng chéo. Các thiết bị này được kết nối với cùng một thiết bị chuyển mạch trong các Vlan khác nhau và không liên lạc với nhau.
JFL

@JFL Xin lỗi người đàn ông tôi chỉ không thấy làm thế nào so sánh với câu hỏi ban đầu là gì. Có, có thể sử dụng các địa chỉ IP chồng chéo cho các liên kết hoặc sử dụng NAT, nhưng tôi không nghĩ rằng nó phản ánh một kịch bản thực tế.

1

Xem xét những gì xảy ra khi bạn có mạng LAN ở nhà và máy tính có IP 192.168.2.1. Bạn của bạn xuống đường cũng có mạng LAN ở nhà và máy tính có IP 192.168.2.2. Chúng nằm trên cùng một mạng con, vậy tại sao chúng không thể nói chuyện với nhau?

Trong một ví dụ như vậy, nguyên nhân khác với bạn đang hỏi về.

Nhưng một Vlan đạt được kết quả tương tự - nó phân đoạn một mạng, ở lớp thứ hai.

Quan điểm của tôi là chúng ta có thể dễ dàng thấy rằng thực tế "địa chỉ IP nằm trong cùng một mạng con" là không đủ để xác định liệu các gói có thể định tuyến giữa chúng hay không. Cấu trúc liên kết cơ bản có một phần để chơi là tốt.

Đưa điều này đến mức cực đoan, ở lớp thấp nhất, bạn cần một số vật liệu vật lý (tốt, ổn, hoặc không khí: D) để thực sự vận chuyển dữ liệu. Các máy tính của bạn có thể ở cùng một nhà trên cùng một mạng con nhưng không được kết nối vật lý (hoặc có liên kết không dây) và sau đó bạn sẽ không mong muốn các gói được định tuyến.


0

Quan điểm của các Vlan là có phân đoạn mạng. Bạn cũng có thể đạt được điều tương tự (một số cảnh báo sang một bên) bằng cách sử dụng mạng con. Vì mạng con của bạn được chia thành 2 Vlan khác nhau, thiết bị của bạn không thể giao tiếp trên mạng L2. Bạn có thể thiết lập giao diện IRB trên công tắc để cho phép giao tiếp giữa các Vlan. Ngoài ra, bạn có thể định tuyến lưu lượng truy cập thông qua tường lửa và cho phép giao tiếp có chọn lọc giữa các Vlan. Tốt nhất, bạn nên thiết kế mạng của mình để có các mạng con khác nhau cho mỗi Vlan và sau đó Tường lửa lưu lượng giữa các Vlan. Hi vọng điêu nay co ich.


1
Nonononono không sử dụng IRB trong tình huống này ... vấn đề là công tắc không bao giờ được cấu hình với hai vlans trên cùng một mạng con. Câu trả lời tốt nhất là đặt tất cả các máy chủ trong một mạng con trong cùng một vlan.
Mike Pennington

0

Khi một kết nối Ethernet mang nhiều hơn một Vlan, tất cả trừ một trong những Vlan đó phải được gắn thẻ . Thẻ Vlan tuân thủ theo chuẩn IEEE 802.1Q được đặt trong khung Ethernet ở vị trí thường có EtherType của khung. Phần đầu tiên của thẻ Vlan là một định danh giao thức thẻ , có giá trị không đổi là 0x8100. Kết quả là, một thiết bị không biết về các thẻ IEEE 802.1Q hoặc được định cấu hình để không mong đợi chúng sẽ nhìn thấy các khung được gắn thẻ và nghĩ rằng "đây không phải là IPv4, ARP hay IPv6; Ethertype 0x8100 này là một thứ hoàn toàn khác và tôi không ' Tôi nghĩ tôi không hiểu gì cả. Tốt nhất là cứ mặc kệ nó đi. "

Công tắc hỗ trợ Vlan có thể lọc các gói đi ra từng cổng bằng các thẻ Vlan của chúng và có thể tùy ý tước thẻ Vlan từ một Vlan đã chọn trên lưu lượng đi từ cổng đó (và thêm ngược lại thẻ Vlan vào lưu lượng đến trên cổng đó), sao cho bất kỳ lưu lượng truy cập nào của Vlan được chọn sẽ xuất hiện dưới dạng lưu lượng Ethernet tiền 802.1Q đơn giản cho thiết bị được kết nối với cổng cụ thể đó. Một Vlan được chọn như vậy được gọi là Vlan gốc cho cổng đó.

Chuẩn 802.1Q cho phép một cổng Ethernet hỗ trợ một Vlan gốc duy nhất và bất kỳ số lượng Vlan được gắn thẻ nào cùng một lúc, nhưng tôi hiểu rằng có một cổng vượt qua cả các khung Ethernet được gắn thẻ và không được gắn thẻ cùng một lúc là một cấu hình hơi bị biến dạng: bạn ' sẽ cần phải nhớ rằng một trong các Vlan trong một cổng / NIC khác với tất cả các Vlan khác và cần được cấu hình khác nhau. Dễ mắc sai lầm.

Theo thuật ngữ của Cisco, một cổng chuyển đổi có thể được cấu hình là cổng truy cập hoặc cổng trung kế . Một cổng truy cập sẽ chỉ cung cấp quyền truy cập vào một Vlan duy nhất và có các thẻ Vlan tự động bị tước khỏi lưu lượng đi và được thêm vào lưu lượng đến cho cổng đó. Mặt khác, một cổng trung kế sẽ chuyển lưu lượng trên một bộ Vlan có thể định cấu hình, nhưng tất cả lưu lượng sẽ được gắn thẻ Vlan.

Vì vậy, đối với trường hợp của bạn có hai thiết bị thuộc hai Vlan khác nhau trên cùng một công tắc, cả hai đều sử dụng địa chỉ trên cùng một mạng con IP. Điều gì xảy ra sẽ phụ thuộc vào cách các cổng chuyển đổi (và giao diện mạng trên thiết bị) được định cấu hình liên quan đến Vlan.

1.) Chuyển đổi cổng thành cổng truy cập, thiết bị không nhận biết Vlan: cổng chuyển đổi sẽ lọc lưu lượng của Vlan "đối diện" và do đó các thiết bị sẽ không bao giờ nhìn thấy lưu lượng của nhau. Điều này đặt ra câu hỏi liệu có hợp lý hay không khi nghĩ về chúng là "nằm trên cùng một phân khúc mạng".

2.) Chuyển đổi cổng thành cổng trung kế được thiết lập để vượt qua cả Vlan, thiết bị không nhận biết Vlan: mỗi thiết bị sẽ nghĩ "Tại sao thiết bị kia cứ gửi cho tôi thứ Ethertype 0x8100 kỳ lạ đó ??? Tôi không nói điều đó."

3.) Chuyển đổi các cổng khi các cổng trung kế được thiết lập để chỉ truyền một Vlan cho mỗi cổng, các thiết bị nhận biết Vlan: bạn sẽ cần chỉ định các số Vlan trong cấu hình mạng của các thiết bị, nhưng kết quả cuối cùng về cơ bản giống như trong trường hợp # 1: các thiết bị sẽ không nhìn thấy lưu lượng của nhau.

4.) Chuyển đổi cổng thành cổng trung kế được thiết lập để vượt qua cả Vlan, thiết bị nhận biết Vlan nhưng được định cấu hình cho các Vlan khác nhau: giờ đây, lớp hỗ trợ Vlan trong chính các thiết bị thực hiện lọc, nhưng kết quả thực tế giống như trong trường hợp # 1 và # 3: lưu lượng của thiết bị "đối diện" sẽ không bao giờ đến được lớp giao thức IP trong ngăn xếp giao thức mạng của thiết bị.

5.) Chuyển đổi cổng như cổng trung kế được thiết lập để vượt qua cả Vlan, thiết bị được định cấu hình với nhận thức Vlan, cả Vlan được định cấu hình trong thiết bị. Đây là trên và vượt quá những gì bạn yêu cầu. Bây giờ thiết bị sẽ có mặt hiệu quả trên cả hai Vlan.

Do cả hai Vlan đều giả vờ khác biệt ở cấp độ Ethernet, nhưng đang sử dụng cùng một mạng con IP, điều gì xảy ra sẽ phụ thuộc vào cách định tuyến IP của thiết bị được triển khai. Chi tiết quan trọng chính sẽ là liệu ngăn xếp IP được thiết kế để sử dụng mô hình máy chủ mạnh hay mô hình máy chủ yếu và chính xác cách thức khái niệm Vlan được tích hợp vào hệ thống.

Ví dụ, Linux sẽ trình bày bất kỳ Vlan được gắn thẻ được cấu hình nào dưới dạng các ảo ảo bổ sung, phản ánh trạng thái liên kết của NIC vật lý cơ bản nhưng hoạt động độc lập nhất có thể về mặt kỹ thuật. Vì vậy, sẽ giống như bạn có hai NIC được cắm vào hai phân đoạn mạng vật lý riêng biệt với các mạng con IP chồng chéo 100%: hệ thống có thể nhận được lưu lượng truy cập đến tốt, nhưng sẽ cho rằng mọi NIC được kết nối với mạng con IP đích đều tốt để nói chuyện bất kỳ máy chủ nào khác trong mạng con IP đó và sẽ sử dụng NIC (ảo, cụ thể Vlan) bao giờ xảy ra đầu tiên trong bảng định tuyến ... và do đó, cấu hình có thể hoặc không hoạt động tùy theo thứ tự các phần khác nhau của Cấu hình NIC và Vlan đã được khởi tạo. Bạn sẽ cần sử dụng Linux '

Sử dụng cùng một mạng con IP trên hai phân đoạn riêng biệt là một vấn đề của lớp 3, bất kể phân tách phân đoạn ở lớp 2 là vật lý (= các NIC riêng biệt thực tế) hay logic (= được tạo bằng Vlan). Một vấn đề của lớp 3 sẽ cần một giải pháp lớp 3: sử dụng bộ định tuyến hoặc một số hộp khác để đối xứng-NAT một trong các mạng con để loại bỏ mạng con IP chồng chéo sẽ thanh lịch hơn nhiều so với cố gắng xử lý nó ở từng thiết bị.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.