天天看點

pfSense如何建立和配置VLAN

虛拟區域網路(VLAN)是一組邏輯上的裝置和使用者,這些裝置和使用者并不受實體位置的限制,可以根據功能、部門及應用等因素将它們組織起來,互相之間的通信就好像它們在同一個網段中一樣,由此得名虛拟區域網路。VLAN是一種比較新的技術,工作在OSI參考模型的第2層和第3層,一個VLAN就是一個廣播域,VLAN之間的通信是通過第3層的路由器來完成的。與傳統的區域網路技術相比較,VLAN技術更加靈活,它具有以下優點: 網絡裝置的移動、添加和修改的管理開銷減少;可以控制廣播活動;可提高網絡的安全性。

在計算機網絡中,一個二層網絡可以被劃分為多個不同的廣播域,一個廣播域對應了一個特定的使用者組,預設情況下這些不同的廣播域是互相隔離的。不同的廣播域之間想要通信,需要通過一個或多個路由器。這樣的一個廣播域就稱為VLAN。

在這篇文章中,我将介紹如何在pfSense中建立和配置一個VLAN。 配置完成後,可以允許(或阻止)該VLAN與其他VLAN之間的通信,每個VLAN将能夠共享相同的Internet連接配接。配置分以下幾下步驟:

在24端口交換機上建立一個靜态VLAN。

将該VLAN從交換機中繼到pfSense上的LAN接口。

為該VLAN配置設定一個24位掩碼的私有IP子網。

我們假定:

pfSense已經正确安裝,并為現有LAN接口提供了基本的Internet連接配接。

配置設定給LAN接口的網卡支援IEEE 802.1Q VLAN辨別。 

連接配接到區域網路接口的交換機能夠支援基于端口的VLAN的建立、配置和中繼。

本文中使用的軟體版本如下:

pfSense2.4.2-RELEASE-P1(AMD64)

本文中使用的交換機是Ciscor的SG200-26,千兆以太網端口,基于Web的管理界面,同時支援多達256個基于端口和IEEE 802.1Q辨別的VLAN。

每個交換機及其相關的管理接口不一定相同,你可以參照本文中的說明進行适當的調整。

交換機配置

靜态VLAN(通常稱為“基于端口”的VLAN)是通過将交換機端口配置設定給預先配置的VLAN辨別符來建立的。 在這個例子中,我将在交換機上配置一個靜态VLAN并為其指定一個VLAN ID 50。你也可以使用2到4094之間的任何正整數來表示VLAN ID,但應避免使用VLAN ID 1和4095,因為一般來說,大多數交換機預設将所有端口配置設定給VLAN ID 1, 并将VLAN ID 4095作為“丢棄”VLAN。

首先導航到VLAN Management->Create VLAN并選擇“Add”。在“VLAN ID”字段中輸入值50,并在“VLAN Name”字段中輸入一個名稱來表示該特定VLAN。 在這個例子中,我使用了名稱“vlan50”。完成後,點選“Apply”。 (見下圖) 

<a href="https://www.iceflatline.com/wp-content/images/pfsense-vlan-1.png" target="_blank"></a>

在将特定端口的成員資格配置設定給我們的新VLAN之前,我們必須首先将該端口配置為“Access”端口或“Trunk”端口。Access端口是隻有一個VLAN成員的端口。 這種類型的端口通常用于連接配接通常不知道VLAN成員資格的終端裝置,或者是因為它們的NIC不能将以太網幀标記為VLAN ID,或者它們沒有配置為這樣做。 配置為Access端口的交換機端口在将以太網幀發送到裝置之前,将删除所有VLAN資訊。 另一方面,Trunk端口可以承載多個VLAN流量,通常用于将交換機連接配接到其他交換機或路由器。 通常情況下,小型企業級交換機(如Cisco SG200)預設将每個端口指定為Trunk端口。

為了讓教程簡單明了,我們假設連接配接到交換機的裝置沒有配置。在本例中,我們将端口19配置為Access端口,并将其配置設定給新建立的VLAN中的成員資格。 此外,我們還假設目前使用端口25将交換機連接配接到pfSense LAN接口,并将其配置為Trunk端口,并将它配置設定給新建立的VLAN中的成員資格。

導航到VLAN Management-&gt;Interference Settings,選擇端口19,然後選擇“EDIT”。 将接口VLAN模式從“Trunk”更改為“Access”,然後選擇“Apply”(見下圖)。 現在按照類似的步驟将端口2配置為Access端口。

<a href="https://www.iceflatline.com/wp-content/images/pfsense-vlan-2.png" target="_blank"></a>

接下來,導航至VLAN Management-&gt;Port VLAN Membership,選擇端口19,然後選擇“加入VLAN”。 由于接入端口可以作為untagged添加到單個VLAN,我們需要先删除交換機自動配置設定給每個端口(通常是VLAN 1)的預設VLAN。 突出顯示VLAN 1,方法是左鍵單擊,然後選擇箭頭圖示将其從接口中删除。 現在突出顯示VLAN 50,然後選擇箭頭圖示将其添加到接口,確定從“Tagged”下的選項中選擇“Untagged”。 完成後選擇“Apply”(見下圖)。

<a href="https://www.iceflatline.com/wp-content/images/pfsense-vlan-3.png" target="_blank"></a>

将交換機端口19配置為Access端口并加入到VLAN 50中,同時配置連接配接到pfSense LAN 接口的端口25, 此端口将配置為Trunk端口并加入到VLAN 50中。

確定将端口25配置為Trunk端口,然後導航到VLAN Management-&gt;Port VLAN Membership,選擇端口25,然後選擇“Join VLAN”。 突出顯示VLAN 50,然後選擇箭頭圖示将其添加到接口,確定從“Tagged”下的選項中選擇“Tagged”。 完成後選擇“Apply”(見下圖)。

<a href="https://www.iceflatline.com/wp-content/images/pfsense-vlan-4.png" target="_blank"></a>

交換機配置完成,請確定将所做的更改儲存到啟動配置中,以防交換機因任何原因重新啟動而丢失配置。

pfSense配置

現在,我們需要在pfSense中配置VLAN 50。導航到網絡接口- &gt;接口配置設定,并記下配置設定給LAN網卡的裝置驅動程式名稱。 在本例中,我們假定裝置驅動程式的名字是“em1”(見下圖)。 LAN2接口将作為我們将在下一步建立的VLAN接口的“父接口”。

<a href="https://www.iceflatline.com/wp-content/images/pfsense-vlan-5.png" target="_blank"></a>

接下來,導航到網絡接口-&gt;接口配置設定 &gt; VLANs,選擇“+添加”圖示。 在随後的頁面中,從“父接口”下拉清單中的選項中,選擇LAN 2接口“em1”,并在“VLAN 辨別”下輸入值50。 在“描述”欄添加該VLAN的可選說明,然後選擇“儲存設定”(見下圖)。

<a href="https://www.iceflatline.com/wp-content/images/pfsense-vlan-6.png" target="_blank"></a>

建立VLAN接口後,傳回到網絡接口-&gt;接口配置設定,在可用網絡端口中,選擇“em1上的VLAN 50-opt1,點選“+ 添加”圖示,然後選擇“儲存設定”。

<a href="https://www.iceflatline.com/wp-content/images/pfsense-vlan-7.png" target="_blank"></a>

在這個例子中,我們假定pfSense已經将VLAN 50配置設定為OPT4。 導航到網絡接口 - &gt; OPT4并選擇“啟用接口”。 在“描述”欄,将“OPT4”替換為“VLAN 50”,然後從“IPv4配置類型”下拉清單中的選項中選擇“靜态IPv4”。 對于VLAN 50,我們将使用網絡192.168.50.0/24,在此接口上配置設定靜态IP位址192.168.50.1,并在“靜态IP配置”部分下選擇“24”的網絡掩碼。 其他參數可以保持其預設值。 完成後選擇“儲存設定”和“應用更改”(見下圖)。

<a href="https://www.iceflatline.com/wp-content/images/pfsense-vlan-8.png" target="_blank"></a>

接下來,我們需要為我們的新VLAN建構防火牆規則,以便流量可以從WAN接口入站/出站,也可以接入Internet。 導航到防火牆 - &gt;規則政策,選擇VLAN 50,選擇“添加”圖示建立一個新的規則。 在本例中,我們将為VLAN 50建立一個簡單的出站傳遞規則,類似于典型的LAN出站傳遞規則的配置方式。動作選“通過” ,協定選“any”,源位址選“VLAN50 net”。 輸入這個建立規則的描述。 其他參數可以保持其預設值。 完成後選擇“儲存設定”和“應用更改”(見下圖)。

<a href="https://www.iceflatline.com/wp-content/images/pfsense-vlan-9.png" target="_blank"></a>

除非打算為主機裝置配置設定靜态IP位址,否則需要為新VLAN配置DHCP伺服器。導航至服務 - &gt; DHCP服務,并選擇VLAN 50接口。選擇“在接口VLAN50上啟用DHCP服務”,然後 輸入IP位址範圍。 pfSense将預設使用配置設定給此接口的IP位址作為網關位址。 在本例中,網關位址是192.168.50.1。 如果是其他網關,請在“網關”下輸入其他網關的IP位址。 同時輸入DNS位址,其他參數保持預設。 完成後選擇“儲存設定”。

<a href="https://www.iceflatline.com/wp-content/images/pfsense-vlan-10.png" target="_blank"></a>

如果在上一步,你沒有指定DNS位址,那還需要導航到服務 - &gt; DNS轉發器 - &gt;接口,并確定DNS轉發器用于響應來自用戶端的查詢接口包含VLAN50,然後“儲存設定”并“應用更改”(見下圖)。

<a href="https://www.iceflatline.com/wp-content/images/pfsense-vlan-11.png" target="_blank"></a>

至此,配置完成。

要進行測試,請将主機裝置(如桌上型電腦或筆記本電腦)連接配接到交換機上的端口19。如果按照前述配置了所有内容,則應該在為VLAN 50網絡192.168.50.0/24指定的DHCP位址範圍内收到一個IP位址。預設網關應該是192.168.50.1,DNS應該是你指定的位址,如果pfsense之前已經連接配接網際網路,你現在應該可以正常通路網絡。

這裡要注意,按照目前配置,每個VLAN都可以路由到所有其他VLAN。如果想禁止某個或某些特定VLAN的通信,則必須建立防火牆規則,明确規定路由方向。要注意的是,pfSense在第一次比對的基礎上評估防火牆規則(即第一個比對資料包的規則的操作将被執行)。是以,如果想要阻止所有VLAN 50流量到達LAN,則可以在之前建立的規則之前建立一條規則,阻止VLAN 50與LAN的通信(見下圖)。

<a href="https://www.iceflatline.com/wp-content/images/pfsense-vlan-12.png" target="_blank"></a>

總結

如果交換機和網絡接口支援VLAN功能,配置pfSense的VLAN可以簡單歸納為以下幾個步驟:

在小型企業交換機上建立了一個靜态VLAN,并将該VLAN中繼到pfSense上的LAN接口。

建立并添加VLAN接口,建立必要的防火牆規則。

為VLAN配置設定了一個24位掩碼的私有IP子網,使用DHCP給主機配置設定IP位址。

VLAN可以共享pfSense的Internet連接配接。

配置pfSense來防止每個VLAN之間的通信。

本文轉自 鐵血男兒 51CTO部落格,原文連結:http://blog.51cto.com/fxn2025/2068091,如需轉載請自行聯系原作者

繼續閱讀