題 VLAN和子網有什麼區別? [關閉]


我讀過很多關於VLAN和子網的論壇和文章。
但是,除了以下內容之外,我還沒有理解每個功能:

  1. 子網允許網絡分段
  2. VLAN是網絡的獨立部分

問題

  1. 如果我有多個子網,我認為你需要一個路由器來在每個子網之間進行通信。只有每個子網內的設備才能位於該子網的本地廣播域中。是對的嗎?

  2. 我是否需要子網來設置VLAN?

  3. 我知道子網中可以存在VLAN。但我的理解是,您必須將該子網的IP地址分配給VLAN。如何將其與子網的其餘部分隔離?

  4. 你什麼時候設置VLAN?特別是如果我能夠使用子網劃分我的網絡?

  5. 我一直在談論以下幾點。但是,我不確定這在閱讀時究竟意味著什麼 same physical network

    虛擬局域網(VLAN)允許我們創建不同的邏輯和物理網絡;而IP子網只允許我們通過相同的物理網絡創建邏輯網絡。

會欣賞現實世界的例子。


86
2017-11-03 18:16


起源


主要區別在於加入子網是基於客戶端IP配置。因此,客戶端可以使用他想要的任何子網。對於VLAN,配置在服務器端完成(例如,基於LAN端口),客戶端無法更改它。從安全角度來看,這是一個很大的不同。 - Robert
@Robert - 你能詳細說明你的意思嗎? client side IP and server side configuration? - PeanutsMonkey
子網由您使用的IP確定,IP可由計算機(或設備)的管理員選擇。因此它在客戶端完成 - 您無法控制它。在服務器/路由器側配置VLAN。控制路由器/服務器的人決定將哪個計算機/端口分配給哪個VLAN。一個(或一些)中央路由器/服務器可以在邏輯上(登錄密碼)和物理(訪問服務器機房)受到保護。 - Robert
此頁面可能有用 petri.co.il/csc_setup_a_vlan_on_a_cisco_switch.htm - barlop
@PeanutsMonkey:通過閱讀你的評論,聽起來你看到OSI模型中各種網絡層的混亂。 VLAN在第2層上運行,而IP子網在第3層上運行。 - afrazier


答案:


子網 - 是由一部分地址(通常稱為網絡地址)和子網掩碼(網絡掩碼)確定的IP地址範圍。例如,如果網絡掩碼是255.255.255.0(或簡稱/ 24),並且網絡地址是192.168.10.0,那麼它定義了一系列IP地址192.168.10.0到192.168.10.255。寫作的簡寫是192.168.10.0/24。

VLAN - 想到這一點的好方法是“切換分區”。假設您有一個支持VLAN的8端口交換機。您可以將4個端口分配給一個VLAN(比如VLAN 1),將4個端口分配給另一個VLAN(比如VLAN 2)。 VLAN 1不會看到任何VLAN 2的流量,反之亦然,從邏輯上講,您現在有兩個獨立的交換機。通常在交換機上,如果交換機沒有看到MAC地址,它會將流量“泛洪”到所有其他端口。 VLAN阻止了這一點。

如果兩台計算機要使用TCP / IP進行通信,則必須滿足以下兩個條件之一:

  • 它們必須屬於同一子網。這意味著網絡地址必須相同,並且網絡掩碼必須相等或更小。因此,具有IP地址192.168.10.4/24的接口的計算機可以與具有IP地址192.168.10.8/24的接口的計算機通信,沒有問題,只要它們都連接到同一物理交換機或VLAN。如果連接到同一物理交換機或VLAN的第二台計算機的接口是192.168.11.8/24,它將忽略流量(除非接口處於混雜模式)。

  • 兩台計算機之間需要存在路由器才能在子網之間轉發流量。計算機A和計算機B需要到該路由器的路由(或默認網關)。假設具有IP地址為192.168.10.4/24的接口的計算機想要與具有IP地址192.168.20.4/24的接口的計算機通信。不同的子網,所以我們必須通過路由器。假設有一個帶有兩個接口的路由器(根據定義,路由器有兩個接口),一個在192.168.10.254/24和192.168.20.254/24上。如果路由表或DHCP設置正確並且計算機A和B都可以到達各自子網上的路由器接口,則它們可以通過路由器間接地相互通信。

強制流量通過路由器,即使它不需要,例如我們上面的8端口交換機,也具有安全性和性能優勢 - 它為您提供了過濾流量的機會,根據類型和路由器優化路由流量的機會不轉發廣播流量(除非異常配置)。 VLAN有時被用作“黑客”來管理IPv4廣播流量的流量/可見性。

編輯以回答您的一些問題:

  • 從概念上講,VLAN等同於交換機。 VLAN的1個端口中的內容被複製(“泛洪”)到所有其他端口,除非VLAN之前已經看到/學習過MAC地址,然後將其定向到該端口。沒有適當的VLAN網關。 “網關”始終表示路由器的IP地址。

  • 要使VLAN 1與VLAN 2通信,VLAN 1中的接口必須連接到路由器,VLAN 2中的接口必須連接到路由器,並且該路由器必須配置為在這些子網之間轉發流量。在上面的8端口示例中,如果我們想在這些VLAN之間路由流量,我們必須在連接到路由器的每個VLAN上花費1個端口。與開關相同。

我相信很多高端交換機/硬件都有一個“內置”“VLAN路由器”,如果你想在VLAN之間路由,那麼在每個VLAN中花一個額外的端口將它連接到物理路由器真的不是必需的在同一個開關。這可能是VLAN IP或“網關”發揮作用的地方。 (我邀請那些知識淵博的人來編輯這個)

  • 當計算機通過DHCP獲取其IP時,它通常也從同一DHCP服務器獲取“默認網關”。有人必須正確配置DHCP服務器。 RIP,IS-IS,OSPF和BGP等路由協議也可以添加路由。當然你可以選擇手動添加路線(“靜態”路線)

  • 如果您的交換機有一個標記為“console”的串行端口或端口,則可能需要管理並支持VLAN。


68
2017-11-04 01:22



我今天看到的最好的解釋之一。現在這提出了一些問題。 VLAN 1和VLAN 2是否有自己的IP地址,或者只是標記為VLAN 1和VLAN 2?如果它們被標記,VLAN 1中的主機/端點/節點如何相互通信?現在,如果有路由器,網關是VLAN IP地址還是路由器的IP地址?當你說 route table,這是我必須建立的東西嗎?另外,您如何知道您繼承的交換機是VLAN(託管)還是非託管? - PeanutsMonkey
請參閱編輯。 - LawrenceC
謝謝。我對這句話有疑問 ven though it's not needed such as on our 8-port switch above, has security and performance benefits。如果子網是不同網絡的一部分,為什麼不必通過路由器? - PeanutsMonkey
請參閱更多編輯內容。 - LawrenceC


我發現其他解釋很複雜。

  • VLAN允許您使用幻數標記所有網絡數據包(例如 3)。
  • 只有其他網卡設置為 3 會看到那些包

設置一堆計算機 VLAN 3 他們將在他們自己的孤立世界中;他們不會看到任何其他流量。

突然你可以有多個 局域網 在相同的電線上操作(即 虛擬局域網)。您甚至可以擁有兩台具有相同IP的計算機,因為它們具有不同的VLAN標記(例如 3 經文7


通過配置網卡驅動程序來設置VLAN ID:

enter image description here

您的里程數會因您的網卡及其驅動程序而異。


19
2017-11-04 00:24



我遇到了VLAN標籤但是你對此感到好奇 set 網卡說 3?我假設如果沒有路由器,VLAN將無法看到對方。如果有一個路由器,我猜測必須有一個防火牆,以防止數據包從一個VLAN傳遞到下一個VLAN,如果發出requets。那麼VLAN中子網的網關是什麼?它是路由器嗎? - PeanutsMonkey
VLAN也分配了IP地址或只是標籤?根據我在petri.co.il/csc_setup_a_vlan_on_a_cisco_switch.htm上的讀數,似乎樹幹也可以 route 數據包。不確定我的理解是否清楚。這是否意味著交換機是第2層和第3層設備? - PeanutsMonkey
VLAN只是一個標籤。所有網卡都必須知道是否存在VLAN標記,並忽略具有與其自身不同的VLAN標記的數據包。 - Ian Boyd
@IanBoyd:所有網卡都必須能識別VLAN嗎?我認為VLAN之間的邊緣切換可以處理來自Ehternet標頭的所有標記(以及標記的移除)。 - afrazier
對於這樣的智能開關:否,交換機可以處理引導流量。但在這種情況下,您必須對交換機進行編程,以了解哪些端口占用了哪些流量。從對VLAN的簡單解釋來看:它是一種使用ID標記數據包的方式,因此只有具有相同標記的網卡才能看到它們。 - Ian Boyd


簡單的解釋是存在VLAN以允許不同的子網共享物理佈線,端口和交換。您可以在沒有vlan的網絡上擁有不同的子網,但是每個都必須有一組不同的電線。


8
2017-11-03 19:16



我終於明白,通過網絡搜索VLAN允許組織使用相同的交換機而不是購買多個交換機,但我仍然對我在帖子中提出的一些問題感到困惑。 - PeanutsMonkey
什麼?沒有什麼可以阻止一個人在同一個物理網絡上運行多個IP子網,但我沒有想到沒有VLAN的任何好理由。特別是,在沒有VLAN的情況下,您遇到嚴重的困難,無法隔離廣播流量。 - afrazier


1.如果我有多個子網,我認為你需要一個路由器來在每個子網之間進行通信。

是的,您需要一個路由器來在子網之間移動數據包。

只有每個子網內的設備才能位於該子網的本地廣播域中。是對的嗎?

是的,子網是廣播域。

2.我需要一個子網來設置VLAN嗎?

是。

3.我知道子網中可以存在VLAN但我的理解是你必須為VLAN分配該子網的IP地址。

不,據我所知,VLAN在交換機中定義,並隔離每個VLAN的流量。

如何將其與子網的其餘部分隔離?

一個VLAN  一個子網。

4.如果我能夠使用子網劃分網絡,你會設置VLAN嗎?

當您需要將流量分成兩個或多個組而不將物理基礎架構(主要是交換機)分成兩個或多個物理組時。

5.我一直認為虛擬局域網(VLAN)允許我們創建不同的邏輯和物理網絡;而IP子網只允許我們通過相同的物理網絡創建邏輯網絡。但是我不確定當它讀取相同的物理網絡時這究竟意味著什麼。

物理LAN主要由交換機和電纜(在以太網的情況下)佈置成單個樹結構。

通常,LAN是單個子網。組織可能有幾個由路由器鏈接的LAN。

可以使用交換機中的VLAN支持將單個物理LAN拆分為多個邏輯LAN(VLAN)。然後每個VLAN都有一個單獨的子網。因此,需要路由器在邏輯LAN(VLAN)之間移動數據包。


更新:在評論中跟進問題的一些答案。

如果我希望2個獨立VLAN上的設備能夠通信不需要路由器,因為我可以使用中繼。

這裡有一些引用 http://www.formortals.com/an-introduction-to-vlan-trunking/

VLAN中繼允許單個網絡適配器表現為“n”個虛擬網絡適配器,其中“n”的理論上限為4096,但通常限制為1000個VLAN網段。

一旦路由器進入企業交換機基礎設施,路由器就會變得無限有用。一旦中繼,它們就會無所不在,並且可以為企業網絡任何角落的任何子網提供路由服務。

所以你仍然需要一個路由器,但是,使用VLAN中繼,它可以是一個單臂路由器(棒上的路由器)。高端交換機包括路由功能,因此您可能不需要單獨的路由器,因為您的高端交換機也是第3層路由器。

當你說我需要一個子網來設置VLAN時,你的意思是什麼?

VLAN是第2層概念。就像以太網交換機是第2層設備一樣。 VLAN可以使一些交換機完成工作,否則您可能需要隔離組中的六個交換機。但是,您的節點(計算機,打印機等)通常使用第3層尋址(IP)。

對於一個VLAN中的節點(網絡中的N)與另一個VLAN中的節點(網絡中的N)進行通信,您需要一個互聯網協議(換句話說IP)。在IP中,在網絡之間移動數據包,我們需要每個網絡具有不同的第3層網絡地址。

這就是子網的用武之地 - 通過使用子網掩碼將組織分配的第3層網絡地址範圍劃分為子網。然後,您可以使用路由器允許一個子網(在一個VLAN中)中的設備與另一個子網(在另一個VLAN中)中的設備進行通信。


5
2017-11-03 19:07



@RedGrittyBrick - 謝謝。當你說我需要一個子網來設置VLAN時,你的意思是什麼?對我來說,子網劃分是IP地址的隔離還是分段?據我所知,VLAN在第2層運行,這意味著它將MAC地址解析為IP地址,因此假設我的理解是正確的,為什麼以及如何創建子網來設置VLAN?我沒有遵循你的意思 VLAN is defined in the switches and isolates the traffic of each VLAN? - PeanutsMonkey
@RedGrittyBrick - 似乎我還希望2個獨立VLAN上的設備能夠通信不需要路由器,因為我可以使用中繼。 - PeanutsMonkey
@PeanutsMonkey也許你們兩個可能都錯誤地交換了術語VLAN和VLAN。在你讀到他的一句話中,他是一個錯誤的人,你在腦海中。 VLAN是VLAN的複數形式。所以他寫這句話“在交換機中定義VLAN並隔離每個VLAN的流量?”或許應該讀取“/在每個交換機中定義VLAN,並且每個VLAN上的流量是隔離的” - barlop
@barlop - 我確實理解VLAN是VLAN的一個子集但是我對你建議的鏈接中的內容感到困惑,petri.co.il/csc_setup_a_vlan_on_a_cisco_switch.htm。例如,內容讀取 At this point, only ports 2 and 3 should be able to communicate with each other and ports 4 & 5 should be able to communicate. That is because each of these is in its own VLAN - PeanutsMonkey
For the device on port 2 to communicate with the device on port 4, you would have to configure a trunk port to a router so that it can strip off the VLAN information, route the packet, and add back the VLAN information - PeanutsMonkey


1.如果我有多個子網,我認為你需要一個路由器來在每個子網之間進行通信。只有每個子網內的設備才能位於該子網的本地廣播域中。是對的嗎?

IP網絡(子網)是第3層概念。如果兩台PC連接到沒有VLAN的同一L2交換機,它們將位於相同的L2廣播域中,而不是L3廣播域。

2.我需要一個子網來設置VLAN嗎?

不會。但是,如果您希望VLAN中的設備相互通信,則可能需要一些L3協議。

3.我知道子網中可以存在VLAN但我的理解是你必須為VLAN分配該子網的IP地址。如何將其與子網的其餘部分隔離?

不清楚你在問什麼。

4.如果我能夠使用子網劃分網絡,你會設置VLAN嗎?

VLAN只是使L2設備看起來像是多個L2設備的一種方式。

5.我一直認為虛擬局域網(VLAN)允許我們創建不同的邏輯和物理網絡;而IP子網只允許我們通過相同的物理網絡創建邏輯網絡。但是我不確定當它讀取相同的物理網絡時這究竟意味著什麼。


2
2017-11-03 19:27



當你說他們將在同一個第2層廣播域而不是第3層廣播域時,這究竟意味著什麼? - PeanutsMonkey
這意味著如果一個數據包(MAC目的地字段中的所有數據包)都被傳輸,它將被所有設備看到。第3層廣播域可以是IP地址中的所有域,或者網絡號相等,並且地址的主機部分都是1。在進入VLAN之前,您需要了解第2層和第3層的基礎知識。 - dbasnett
謝謝。你能進一步詳細說明你的意思嗎? all ones?你指的是二進制和按位計算嗎? - PeanutsMonkey
是的,所有二進製文件,MAC為MAC = ffffffffffff,IP為255.255.255.255。 - dbasnett