您好,登錄后才能下訂單哦!
網(wǎng)關(guān)
網(wǎng)關(guān)設(shè)置
網(wǎng)關(guān)組
靜態(tài)路由
路由公共IP
路由協(xié)議
故障排查
防火墻的主要功能之一是進(jìn)行路由通信。本章介紹幾個(gè)與路由相關(guān)的主題,包括網(wǎng)關(guān),靜態(tài)路由,路由協(xié)議,公網(wǎng)IP地址的路由以及路由信息的顯示。
網(wǎng)關(guān)是路由的關(guān)鍵; 它們是通過(guò)其他網(wǎng)絡(luò)可以到達(dá)的系統(tǒng)。 大多數(shù)人熟悉的網(wǎng)關(guān)類型是默認(rèn)網(wǎng)關(guān),它是系統(tǒng)連接到互聯(lián)網(wǎng)或任何其他網(wǎng)絡(luò)的路由器,它沒有更具體的路由可以到達(dá)。 網(wǎng)關(guān)也用于靜態(tài)路由,其中必須通過(guò)特定的本地路由器到達(dá)其他網(wǎng)絡(luò)。 在大多數(shù)普通網(wǎng)絡(luò)中,網(wǎng)關(guān)始終與系統(tǒng)上的其中一個(gè)接口位于同一個(gè)子網(wǎng)中。 例如,如果防火墻的IP地址為192.168.22.5/24,則到另一個(gè)網(wǎng)絡(luò)的網(wǎng)關(guān)必須位于192.168.22.x之內(nèi)。 一個(gè)值得注意的例外是點(diǎn)對(duì)點(diǎn)接口,如基于PPP協(xié)議中使用的接口,這些接口通常在另一個(gè)子網(wǎng)中具有網(wǎng)關(guān)IP地址,因?yàn)樗鼈儾灰韵嗤姆绞绞褂谩?/p>
使用路由和網(wǎng)關(guān)時(shí),IPv4和IPv6地址的功能和過(guò)程相同,但給定路由的所有地址都必須包含同一系列的地址。 例如,IPv6網(wǎng)絡(luò)必須使用IPv6網(wǎng)關(guān)/路由器進(jìn)行路由。 無(wú)法為使用IPv4網(wǎng)關(guān)地址的IPv6網(wǎng)絡(luò)創(chuàng)建路由。 在使用網(wǎng)關(guān)組時(shí),也適用相同的限制; 網(wǎng)關(guān)組中的所有網(wǎng)關(guān)都必須具有相同的地址系列。
在網(wǎng)關(guān)可用于任何目的之前,必須將其添加到防火墻配置中。
如果網(wǎng)關(guān)將用于WAN類型接口,則可以將該網(wǎng)關(guān)添加到該接口的配置頁(yè)面中,或者可以先手動(dòng)添加網(wǎng)關(guān),然后從接口的下拉列表中選擇。
動(dòng)態(tài)接口類型(如DHCP和PPPoE)會(huì)收到一個(gè)在網(wǎng)關(guān)列表中標(biāo)記為“動(dòng)態(tài)”的自動(dòng)網(wǎng)關(guān)。 這些網(wǎng)關(guān)的參數(shù)調(diào)整與靜態(tài)網(wǎng)關(guān)的參數(shù)相同,但動(dòng)態(tài)網(wǎng)關(guān)可能不會(huì)被刪除。
添加或管理網(wǎng)關(guān):
導(dǎo)航到系統(tǒng) > 路由管理
單擊網(wǎng)關(guān)選項(xiàng)卡
在列表的頂部或底部單擊 添加,創(chuàng)建新的網(wǎng)關(guān)
在現(xiàn)有網(wǎng)關(guān)的條目旁邊單擊 編輯現(xiàn)有網(wǎng)關(guān)
單擊條目旁邊 刪除現(xiàn)有網(wǎng)關(guān)
單擊 禁用活動(dòng)網(wǎng)關(guān)
單擊 啟用被禁用的網(wǎng)關(guān)
在添加或編輯網(wǎng)關(guān)時(shí),會(huì)顯示一個(gè)頁(yè)面,其中列出了用于控制網(wǎng)關(guān)行為的所有選項(xiàng)。
唯一需要的設(shè)置是接口,名稱和網(wǎng)關(guān)(IP地址)。
通過(guò)網(wǎng)關(guān)到達(dá)的接口。例如,如果這是LAN子網(wǎng)上的本地網(wǎng)關(guān),請(qǐng)?jiān)诖颂庍x擇LAN接口。
IPv4或IPv6,具體取決于此網(wǎng)關(guān)的地址類型。
在網(wǎng)關(guān)列表中引用的網(wǎng)關(guān)的名稱。 它只能包含字母數(shù)字字符或下劃線,但不能包含空格。 例如:WANGW,GW_WAN和WANGATE有效,但不能是WAN GW。
網(wǎng)關(guān)的IP地址。如前所述,這必須位于在選定接口上直接配置的子網(wǎng)中。
選中后,該網(wǎng)關(guān)將被視為系統(tǒng)的默認(rèn)網(wǎng)關(guān)。 這是當(dāng)沒有其他更具體的路由時(shí)使用它。 防火墻可以有一個(gè)IPv4默認(rèn)網(wǎng)關(guān)和一個(gè)IPv6默認(rèn)網(wǎng)關(guān)。
默認(rèn)情況下,系統(tǒng)每秒會(huì)ping每個(gè)網(wǎng)關(guān)一次,以監(jiān)控到達(dá)被監(jiān)視IP地址的流量延遲和數(shù)據(jù)包丟失情況。 該數(shù)據(jù)用于網(wǎng)關(guān)狀態(tài)信息顯示。 如果出于任何原因不希望進(jìn)行此監(jiān)視,可以通過(guò)選中禁用網(wǎng)關(guān)監(jiān)視來(lái)禁用它。 請(qǐng)注意,如果不監(jiān)控網(wǎng)關(guān)狀態(tài),則多WAN將無(wú)法正常工作,因?yàn)樗鼰o(wú)法檢測(cè)到故障。
該選項(xiàng)配置用于確定網(wǎng)關(guān)狀態(tài)的IP地址。默認(rèn)情況下,系統(tǒng)將ping網(wǎng)關(guān)IP地址。這并不總是可取的,特別是在網(wǎng)關(guān)IP地址是本地的情況下。在這種情況下,更有意義的是ping更遠(yuǎn)的上游,例如互聯(lián)網(wǎng)上的ISP DNS服務(wù)器或服務(wù)器。另一種情況是,當(dāng)ISP易出現(xiàn)上游故障時(shí),因此在互聯(lián)網(wǎng)上ping主機(jī)是更準(zhǔn)確的測(cè)試,以確定廣域網(wǎng)是否可用,而不是測(cè)試鏈路本身。一些流行的選擇包括Google公共DNS服務(wù)器或流行的網(wǎng)站,如Google或Yahoo。如果此框中指定的IP地址未直接連接,則會(huì)添加一條靜態(tài)路由,以確保通過(guò)預(yù)期網(wǎng)關(guān)訪問(wèn)監(jiān)控IP地址的流量。每個(gè)網(wǎng)關(guān)必須具有唯一的監(jiān)控IP地址。
通過(guò)訪問(wèn)系統(tǒng)狀態(tài)>網(wǎng)關(guān)或使用儀表板上的網(wǎng)關(guān)小部件可以檢查防火墻感知的網(wǎng)關(guān)狀態(tài)。如果網(wǎng)關(guān)顯示Online,則顯示器IP地址正在成功返回ping。
當(dāng)選中“標(biāo)記網(wǎng)關(guān)為關(guān)閉”時(shí),即使從監(jiān)視IP地址返回ping,網(wǎng)關(guān)也始終被視為關(guān)閉。 這對(duì)于WAN運(yùn)行不穩(wěn)定并且網(wǎng)關(guān)轉(zhuǎn)換導(dǎo)致中斷的情況很有用。 網(wǎng)關(guān)可以被強(qiáng)制進(jìn)入停機(jī)狀態(tài),以便其他網(wǎng)關(guān)可以成為首選,直到它穩(wěn)定為止。
網(wǎng)關(guān)條目的可選描述以供參考。關(guān)于它用于的網(wǎng)關(guān)或接口的簡(jiǎn)短說(shuō)明,可以留空不填。
可以更改多個(gè)參數(shù)以控制多WAN場(chǎng)景中的網(wǎng)關(guān)監(jiān)視或處理方式。 大多數(shù)用戶不需要改變這些值。 要訪問(wèn)高級(jí)選項(xiàng),請(qǐng)單擊顯示高級(jí)選項(xiàng)按鈕。 如果設(shè)置了任何高級(jí)選項(xiàng),則此部分會(huì)自動(dòng)展開。 有關(guān)使用多個(gè)WAN連接的更多信息,請(qǐng)參閱多個(gè)WAN連接。
使用多WAN時(shí),如果兩個(gè)WAN具有不同的帶寬量,比重參數(shù)會(huì)調(diào)整WAN使用的比率。 例如,如果WAN1有5Mbit / s,WAN2有10Mbit / s,則WAN1的權(quán)重為1,WAN2的權(quán)重為2.然后,每三個(gè)連接出去一個(gè)使用WAN,兩個(gè)使用WAN2。 使用這種方法,可以更好地利用可用帶寬進(jìn)行分配。 可以選擇從1到30的比重。
為了節(jié)省帶寬,默認(rèn)情況下,dpinger守護(hù)程序會(huì)發(fā)送有效負(fù)載大小為0的ping,以便ICMP回顯請(qǐng)求中不包含任何數(shù)據(jù)。 但是,在極少數(shù)情況下,CPE,ISP路由器或中間跳可能丟棄或拒絕沒有有效載荷的ICMP數(shù)據(jù)包。 在這些情況下,請(qǐng)將有效負(fù)載大小設(shè)置為大于0。通常,1的大小足以滿足受影響的設(shè)備。
該字段控制此網(wǎng)關(guān)認(rèn)為正常的延遲量。該值以毫秒(ms)表示。 “From”字段中的值是將網(wǎng)關(guān)視為警告狀態(tài)的下邊界,但不會(huì)關(guān)閉。如果延遲超過(guò)“To”字段中的值,則會(huì)將其視為關(guān)閉并從服務(wù)中刪除。這些字段中的正確值可能因所使用的連接類型以及防火墻和監(jiān)視IP地址之間的ISP或設(shè)備而異。默認(rèn)值是從300到500。
其他一些常見情況可能需要調(diào)整這些值。例如,即使在更高的延遲時(shí)間內(nèi),一些DSL線路也可以正常運(yùn)行,因此將To參數(shù)增加到700或更多時(shí),可以降低網(wǎng)關(guān)被視為關(guān)閉的次數(shù),事實(shí)上,它的運(yùn)行是可以接受的。另一個(gè)例子是通過(guò)一個(gè)GIF隧道連接到一個(gè)提供商,比如he.net for IPv6。由于GIF隧道的性質(zhì)以及隧道服務(wù)器上的負(fù)載,即使延遲時(shí)間高達(dá)900毫秒,通過(guò)ICMP ping響應(yīng)報(bào)告,隧道仍可以工作。
與延遲閾值類似,數(shù)據(jù)包丟失閾值控制監(jiān)視IP地址的數(shù)據(jù)包丟失量,然后視為不可用。該值以百分比表示,0表示無(wú)損,100表示全損。 “From”字段中的值是將網(wǎng)關(guān)視為警告狀態(tài)的下邊界,但不會(huì)關(guān)閉。如果數(shù)據(jù)包丟失量超過(guò)“To”字段中的值,則會(huì)將其視為關(guān)閉并從服務(wù)中刪除。這些字段中的正確值可能因所使用的連接類型以及防火墻和監(jiān)視器IP地址之間的ISP或設(shè)備而異。默認(rèn)值是從10到20。
與延遲一樣,連接可能傾向于不同數(shù)量的數(shù)據(jù)包丟失,并且仍以可用方式運(yùn)行,尤其是在監(jiān)視IP地址的路徑丟失或延遲ICMP以支持其他流量時(shí)。我們觀察到無(wú)法使用的連接和少量的損失,有些甚至在顯示45%的損失時(shí)也可用。如果在正常運(yùn)行的WAN網(wǎng)關(guān)上發(fā)生丟失警報(bào),請(qǐng)?jiān)贔rom和To字段中輸入較高的值,直到達(dá)到線路的良好平衡。
該字段中的值控制向監(jiān)視IP地址發(fā)送ping的頻率(以毫秒為單位)。 缺省值是每秒鐘ping兩次(500毫秒)。 在某些情況下,例如需要監(jiān)控但具有高數(shù)據(jù)費(fèi)用的連接,即使每秒鐘都會(huì)有小的ping也會(huì)加起來(lái)。 只要該值小于或等于警報(bào)間隔并且不違反下面列出的時(shí)間段的限制,則該值可以安全地增加。 較低的值會(huì)更頻繁地ping,并且更準(zhǔn)確,但會(huì)消耗更多資源。 以較高的準(zhǔn)確度為代價(jià),較高的值對(duì)不穩(wěn)定的行為不敏感并且消耗較少的資源。
數(shù)據(jù)包被視為丟失之前的時(shí)間(以毫秒為單位)。默認(rèn)值是2000毫秒(2秒)。必須大于或等于高延遲閾值。
如果已知線路在正常工作時(shí)具有高等待時(shí)間,則可以增加該線路的值以進(jìn)行補(bǔ)償。
平均結(jié)果平均的時(shí)間量(以毫秒為單位)。 默認(rèn)值是60000(60秒,一分鐘)。 較長(zhǎng)的時(shí)間周期需要更多時(shí)間用于延遲或丟失以觸發(fā)警報(bào),但不易受Ping結(jié)果中不穩(wěn)定行為的影響。
時(shí)間段必須大于探測(cè)間隔和損耗間隔總和的兩倍,否則可能至少有一個(gè)探測(cè)未完成。
守護(hù)進(jìn)程檢查警報(bào)條件的時(shí)間間隔(以毫秒為單位)。默認(rèn)值是1000(1秒)。該值必須大于或等于探測(cè)間隔,因?yàn)樘綔y(cè)之間不可能發(fā)生警報(bào)。
通過(guò)接口特定路由選項(xiàng)使用非本地網(wǎng)關(guān)允許網(wǎng)關(guān)IP地址存在于接口子網(wǎng)之外的非標(biāo)準(zhǔn)配置。 有些提供商為了減少IPV4地址的供應(yīng),不把網(wǎng)關(guān)放到每個(gè)客戶子網(wǎng)上,而采取了這種措施。 除非上游供應(yīng)商要求,否則不要激活此選項(xiàng)。
網(wǎng)關(guān)組定義了用于故障轉(zhuǎn)移或負(fù)載平衡的網(wǎng)關(guān)組。網(wǎng)關(guān)組還可以在GUI的某些區(qū)域用作服務(wù)故障轉(zhuǎn)移的接口值,例如Open***,IPsec和動(dòng)態(tài)DNS。
有關(guān)設(shè)置這些功能的信息,請(qǐng)參閱多個(gè)WAN連接。
當(dāng)主機(jī)或網(wǎng)絡(luò)通過(guò)默認(rèn)網(wǎng)關(guān)以外的其他路由器可達(dá)時(shí)必須使用靜態(tài)路由。 pfSense知道直接連接到它的網(wǎng)絡(luò),并按照路由表的指示到達(dá)所有其他網(wǎng)絡(luò)。 在內(nèi)部路由器連接其他內(nèi)部子網(wǎng)的網(wǎng)絡(luò)中,必須為該網(wǎng)絡(luò)定義一條靜態(tài)路由才能到達(dá)。 通過(guò)這些其他網(wǎng)絡(luò)的路由器必須先添加為網(wǎng)關(guān)。
靜態(tài)路由在系統(tǒng)>路由管理,靜態(tài)路由選項(xiàng)卡上設(shè)置。
添加路由:
導(dǎo)航到系統(tǒng) >路由管理, 靜態(tài)路由選項(xiàng)卡
單擊 添加一條靜態(tài)路由
填寫如下配置:
目標(biāo)網(wǎng)絡(luò):指定使用此路由可達(dá)的網(wǎng)絡(luò)和子網(wǎng)掩碼。
網(wǎng)關(guān): 定義通過(guò)該網(wǎng)絡(luò)到達(dá)的路由器。
禁用: 設(shè)置是否不使用靜態(tài)路由。
描述: 輸入描述性文字供管理員參考
單擊保存
單擊應(yīng)用更改
管理一個(gè)已經(jīng)存的靜態(tài)路由:
導(dǎo)航到系統(tǒng) >路由管理, 靜態(tài)路由選項(xiàng)卡
在現(xiàn)有條目右側(cè)單擊 編輯該靜態(tài)路由
在現(xiàn)有條目右側(cè)單擊 刪除該靜態(tài)路由
在現(xiàn)有條目右側(cè)單擊 禁用該靜態(tài)路由
在現(xiàn)有條目右側(cè)單擊 啟用該靜態(tài)路由
單擊應(yīng)用更改
下圖是網(wǎng)絡(luò)拓?fù)洌?/p>
由于上圖靜態(tài)路由中的192.168.2.0/24網(wǎng)絡(luò)不在直接連接到pfSense的接口上,因此需要使用靜態(tài)路由,以便防火墻知道如何到達(dá)該網(wǎng)絡(luò)。 如前所述,在添加靜態(tài)路由之前,必須首先定義網(wǎng)關(guān)。
防火墻規(guī)則調(diào)整也可能是必需的。 如果使用自定義LAN規(guī)則,則必須允許通過(guò)LAN上的靜態(tài)路由允許網(wǎng)絡(luò)訪問(wèn)。
在很多情況下,當(dāng)使用靜態(tài)路由時(shí),通信將不對(duì)稱地結(jié)束。 這意味著流量在一個(gè)方向上將沿著不同的路徑而不是在相反方向上進(jìn)行傳遞。如下圖所示:
從PC1到PC2的流量將經(jīng)過(guò)pfSense,因?yàn)樗荘C1的默認(rèn)網(wǎng)關(guān),但是相反方向的流量將直接從路由器到PC1。 由于pfSense是一個(gè)有狀態(tài)的防火墻,它必須看到整個(gè)連接的流量才能正確地過(guò)濾流量。 在這種非對(duì)稱路由的情況下,任何有狀態(tài)的防火墻都會(huì)丟棄合法的流量,因?yàn)樗荒茉趦蓚€(gè)方向都看不到流量的情況下保持正常狀態(tài)。 這通常只影響TCP,因?yàn)槠渌麉f(xié)議沒有正式的連接握手防火墻可以識(shí)別用于狀態(tài)跟蹤。
在非對(duì)稱路由場(chǎng)景中,有一個(gè)選項(xiàng)可用于防止合法流量被丟棄。 該選項(xiàng)添加了防火墻規(guī)則,允許使用更寬松的一組規(guī)則選項(xiàng)和狀態(tài)處理來(lái)定義在靜態(tài)路由中定義的網(wǎng)絡(luò)之間的所有流量。 要激活這個(gè)選項(xiàng):
單擊系統(tǒng) > 高級(jí)設(shè)置
單擊 防火墻/NAT選項(xiàng)卡
選中在同一接口上繞過(guò)流量的防火墻規(guī)則
單擊保存
或者,可以手動(dòng)添加防火墻規(guī)則以允許類似的流量。 需要兩個(gè)規(guī)則,一個(gè)在流量進(jìn)入的接口選項(xiàng)卡上(例如局域網(wǎng)),另一個(gè)在“浮動(dòng)”選項(xiàng)卡上:
導(dǎo)航到防火墻 > 規(guī)則策略
單擊流量將進(jìn)入的接口的選項(xiàng)卡 (如 LAN)
單擊 在列表頂部添加新的規(guī)則
進(jìn)行如下設(shè)置:
協(xié)議: | TCP |
---|---|
源地址: | 本地系統(tǒng)利用靜態(tài)路由的地址 (如 LAN Net) |
目的地址: | 路由的另一端的網(wǎng)絡(luò) |
TCP 標(biāo)識(shí): | 設(shè)置為任意標(biāo)識(shí) (在高級(jí)選項(xiàng)下) |
狀態(tài)類型: | 選Sloppy 狀態(tài)(在高級(jí)選項(xiàng)下) |
單擊 保存
單擊浮動(dòng)選項(xiàng)卡
單擊 在列表頂部添加新的規(guī)則
進(jìn)行如下設(shè)置:
接口: | 流量來(lái)源的接口 (如 LAN) |
---|---|
方向: | Out |
協(xié)議: | TCP |
源地址: | 本地系統(tǒng)利用靜態(tài)路由的地址 (如 LAN Net) |
目的地址: | 路由的另一端的網(wǎng)絡(luò) |
TCP 標(biāo)識(shí): | 設(shè)置為任意標(biāo)識(shí) (在高級(jí)選項(xiàng)下) |
狀態(tài)類型: | 選Sloppy 狀態(tài)(在高級(jí)選項(xiàng)下) |
單擊保存
如果來(lái)自其他來(lái)源或目的地的其他流量在TCP標(biāo)志(例如“TCP:SA”或“TCP:PA”)在防火墻日志中顯示被阻止,則可以調(diào)整或復(fù)制規(guī)則以匹配該流量。
注意
如果需要在靜態(tài)路由子網(wǎng)之間進(jìn)行流量過(guò)濾,則必須在路由器上進(jìn)行過(guò)濾,而不是在防火墻上完成,因?yàn)榉阑饓Σ辉诰W(wǎng)絡(luò)上,這樣可以有效控制流量。
54人閱讀
本節(jié)介紹在單個(gè)防火墻部署中將公有IP子網(wǎng)分配給內(nèi)部接口的公共IP地址的路由。
ISP至少需要分配兩個(gè)公共IP子網(wǎng)。 一個(gè)用于防火墻的WAN,另一個(gè)用于內(nèi)部接口。 這通常是WAN的一個(gè)/ 30子網(wǎng),為內(nèi)部接口分配第二個(gè)子網(wǎng)。 WAN和內(nèi)部IP分配如下圖所示。
198.51.100.64/30 | |
---|---|
IP 地址 | 分配 |
198.51.100.65 | ISP路由器(pfSense默認(rèn)網(wǎng)關(guān)) |
198.51.100.66 | pfSense WAN接口IP地址 |
192.0.2.128/29 | |
---|---|
IP 地址 | 分配 |
192.0.2.129 | pfSense OPT1接口 |
192.0.2.130 | 內(nèi)部主機(jī) |
192.0.2.131 | |
192.0.2.132 | |
192.0.2.133 | |
192.0.2.134 |
首先配置WAN和OPT接口。如果需要,LAN接口也可用于公共IP地址。在本例中,LAN是專用IP子網(wǎng),OPT1是公用IP子網(wǎng)。
相應(yīng)地添加IP地址和網(wǎng)關(guān)。如下圖所示。
現(xiàn)在啟用OPT1,可以選擇更改其名稱,并配置IP地址和子網(wǎng)掩碼。如下圖所示。
在內(nèi)部接口上使用公共IP地址時(shí),必須將內(nèi)部通信轉(zhuǎn)換為WAN IP的默認(rèn)設(shè)置。
導(dǎo)航到 Firewall > NAT
單擊Outbound(出站)選項(xiàng)卡
選擇Hybrid Outbound NAT rule generation(選擇混合出站NAT規(guī)則生成)
單擊Save
單擊 使用以下設(shè)置將新規(guī)則添加到列表頂部:
Do not NAT: | 選中,這樣NAT將被禁用 |
---|---|
Interface: | WAN |
Protocol: | Any |
Source: | 網(wǎng)絡(luò)中輸入本地公網(wǎng)IP子網(wǎng), 192.0.2.128/29 |
Destination: | Any |
單擊Save
這將覆蓋默認(rèn)的自動(dòng)規(guī)則,該規(guī)則將從本地接口離開WAN接口的所有流量轉(zhuǎn)換為WAN IP地址。 來(lái)自O(shè)PT1網(wǎng)絡(luò)192.0.2.128/29的流量不會(huì)被轉(zhuǎn)換,因?yàn)槭謩?dòng)添加的規(guī)則將其排除在NAT之外。 此配置保持其他內(nèi)部接口的自動(dòng)行為,以便自動(dòng)出站NAT規(guī)則的優(yōu)點(diǎn)不會(huì)丟失。下圖顯示了此配置。
如果在所有本地接口上使用公共IP地址,請(qǐng)?jiān)O(shè)置Disable Outbound NAT(禁用出站NAT),而不是使用Hybrid mode(混合模式)。
NAT和IP地址配置現(xiàn)在已完成。 需要添加防火墻規(guī)則以允許出站和入站流量。 下圖顯示了類似DMZ的配置,其中所有去往LAN子網(wǎng)的流量都被拒絕,允許DNS和ping到OPT1接口IP地址,并允許HTTP出站。
要允許來(lái)自Internet的流量到達(dá)內(nèi)部接口上的公共IP地址,請(qǐng)使用公共IP地址作為目標(biāo)在WAN上添加規(guī)則。 圖WAN防火墻規(guī)則顯示了一個(gè)允許HTTP到192.0.2.130的規(guī)則,這是內(nèi)部接口上的公共IP地址之一。
注意
在沒有NAT的情況下,流量將從LAN流向這個(gè)公共子網(wǎng)。如果不需要這種行為,請(qǐng)相應(yīng)地調(diào)整LAN防火墻和NAT規(guī)則。此外,策略路由可能需要繞過(guò)以允許從LAN到該接口。
pfSense目前支持三種路由協(xié)議:
RIP (路由信息協(xié)議)
BGP (邊界網(wǎng)關(guān)協(xié)議)
OSPF (開放最短路徑優(yōu)先)
本節(jié)詳細(xì)介紹了這些內(nèi)容,并假定了解路由協(xié)議是一項(xiàng)先決條件。關(guān)于路由協(xié)議的深入討論超出了本書的范圍。
RIP是路由插件的一部分。要安裝它:
導(dǎo)航到系統(tǒng)>插件管理
點(diǎn)擊可用插件
在列表中找到routed
單擊右側(cè)的,安裝routed
點(diǎn)擊確認(rèn)
等待安裝完成
導(dǎo)航到系統(tǒng)服務(wù)> RIP
配置RIP:
選中 Enable RIP框
選擇將偵聽并發(fā)送路由更新的Interfaces RIP
選擇RIP version
如果RIPv2正在使用并且需要網(wǎng)絡(luò)密碼,請(qǐng)輸入RIPv2 password。
單擊 Save
RIP將立即啟動(dòng)并開始在指定的接口上發(fā)送和接收路由更新。
要使用OpenBSD的OpenBGPD插件,必須先安裝它:
導(dǎo)航到系統(tǒng)>插件管理
點(diǎn)擊可用插件
在列表中找到OpenBGPD
單擊右側(cè)的,安裝OpenBGPD
點(diǎn)擊確認(rèn)
等待安裝完成
導(dǎo)航到系統(tǒng)服務(wù)> OpenBGPD
BGP是一個(gè)復(fù)雜的野獸,詳細(xì)描述它不在本書的討論范圍之內(nèi)。 對(duì)于那些了解BGP的人來(lái)說(shuō),在pfSense上配置OpenBGPD是直接的。 在開發(fā)這個(gè)插件的過(guò)程中,我們依賴于O'Reilly的BGP書籍,并將它推薦給任何想要部署B(yǎng)GP的人。
OpenBGPD插件的一般配置形式是:
使用遠(yuǎn)程AS在Group選項(xiàng)卡上配置組
在Neighbors選項(xiàng)卡上配置一個(gè)或多個(gè)鄰居作為定義的組的成員
在Settings選項(xiàng)卡上根據(jù)需要配置本地AS和網(wǎng)絡(luò)通告
在pfsense中有一個(gè)使用Quagga路由守護(hù)程序的OSPF插件。要安裝它:
導(dǎo)航到系統(tǒng)>插件管理
點(diǎn)擊可用插件
在列表中找到Quagga_OSPF
單擊右側(cè)的,安裝 Quagga_OSPF
點(diǎn)擊確認(rèn)
等待安裝完成
導(dǎo)航到系統(tǒng)服務(wù)>Quagga OSPF
OSPF也是一個(gè)相當(dāng)復(fù)雜的路由協(xié)議,雖然不像BGP那樣復(fù)雜。 配置OSPFD的細(xì)節(jié)也超出了本書的范圍,但對(duì)于習(xí)慣了OSPF的人來(lái)說(shuō),在GUI中找到的配置選項(xiàng)將會(huì)很熟悉。
Quagga OSPF插件的一般配置形式是:
根據(jù)需要添加接口,將本地接口子網(wǎng)標(biāo)記為被動(dòng),并將其他OSPF路由器作為活動(dòng)對(duì)象。
根據(jù)需要配置router ID, area ID等常規(guī)設(shè)置。
在診斷通信流量問(wèn)題時(shí),首先要檢查pfSense已知的路由。
有兩種方式查看路由:通過(guò)WebGUI和通過(guò)命令行。
要在WebGUI中查看路由,請(qǐng)導(dǎo)航至系統(tǒng)診斷>路由,如下圖所示。
命令行輸出與WebGUI中的輸出類似:
# netstat -rWn Routing tables Internet: Destination Gateway Flags Use Mtu Netif Expire default 198.51.100.1 UGS 1822 1500 igb1 10.2.0.0/24 link#2 U 0 1500 igb0 10.2.0.1 link#2 UHS 0 16384 lo0 127.0.0.1 link#11 UH 204 16384 lo0 198.51.100.0/24 link#3 U 1181 1500 igb1 198.51.100.1 00:08:a2:09:95:b6 UHS 2789 1500 igb1 198.51.100.2 link#3 UHS 0 16384 lo0
這些頁(yè)面上顯示的列表示路由的各種屬性,將在本節(jié)后面進(jìn)行解釋。
該列包含目標(biāo)主機(jī)或網(wǎng)絡(luò)。系統(tǒng)的默認(rèn)路由顯示為default。否則,主機(jī)按IP地址列出,網(wǎng)絡(luò)列出IP地址和CIDR子網(wǎng)掩碼。
網(wǎng)關(guān)是通過(guò)其發(fā)送到特定目的地的分組路由器。 如果此列顯示鏈接(如link#1),則該網(wǎng)絡(luò)可通過(guò)該接口直接訪問(wèn),并且不需要特殊路由。 如果一臺(tái)主機(jī)可以看到一個(gè)MAC地址,那么它是一個(gè)本地可達(dá)的主機(jī),在ARP表中有一個(gè)條目,并且數(shù)據(jù)包直接發(fā)送到那里。
有很多標(biāo)志,所有這些標(biāo)志都在FreeBSD的netstat(1)手冊(cè)頁(yè)中進(jìn)行了介紹,如下表所示:
代表字符 | 標(biāo)志 | 含義 |
---|---|---|
1 | RTF_PROTO1 | 協(xié)議特定路由標(biāo)志 #1 |
2 | RTF_PROTO2 | 協(xié)議特定路由標(biāo)志 #2 |
3 | RTF_PROTO3 | 協(xié)議特定路由標(biāo)志 #3 |
B | RTF_BLACKHOLE | 在更新期間丟棄數(shù)據(jù)包 |
b | RTF_BROADCAST | 代表廣播地址 |
D | RTF_DYNAMIC | 通過(guò)重定向動(dòng)態(tài)創(chuàng)建 |
G | RTF_GATEWAY | 目的地需要中介轉(zhuǎn)發(fā) |
H | RTF_HOST | 主機(jī)輸入(否則為網(wǎng)絡(luò)) |
L | RTF_LLINFO | 鏈接地址轉(zhuǎn)換的有效協(xié)議 |
M | RTF_MODIFIED | 動(dòng)態(tài)修改(通過(guò)重定向) |
R | RTF_REJECT | 主機(jī)或網(wǎng)絡(luò)無(wú)法訪問(wèn) |
S | RTF_STATIC | 手動(dòng)添加 |
U | RTF_UP | 可用路由 |
X | RTF_XRESOLVE | 外部守護(hù)進(jìn)程將協(xié)議轉(zhuǎn)換為鏈接地址 |
例如,標(biāo)記為UGS的路由是可用的路由,數(shù)據(jù)包通過(guò)列出的網(wǎng)關(guān)發(fā)送,并且是靜態(tài)路由。
此列計(jì)算給定路由的當(dāng)前活動(dòng)使用次數(shù)。
通過(guò)此路由發(fā)送的數(shù)據(jù)包總數(shù)。這有助于確定路由是否實(shí)際使用,因?yàn)殡S著數(shù)據(jù)包利用路由它將不斷增加。
用于此路由的網(wǎng)絡(luò)接口。
對(duì)于動(dòng)態(tài)條目,此字段顯示直到此路由過(guò)期,直到它不再被使用為止。
Traceroute是一個(gè)非常有用的工具,用于測(cè)試和驗(yàn)證路由和多WAN功能。它顯示了數(shù)據(jù)包從一端到另一端的路徑中的每個(gè)“跳”,以及到達(dá)該中間點(diǎn)時(shí)遇到的延遲。在pfSense上,可以通過(guò)導(dǎo)航到系統(tǒng)診斷> 跟蹤路由或通過(guò)在命令行上使用traceroute來(lái)執(zhí)行跟蹤路由。在Windows上,該程序名稱為tracert。
每個(gè)IP數(shù)據(jù)包都包含一個(gè)生存時(shí)間(TTL)值。當(dāng)路由器傳遞一個(gè)數(shù)據(jù)包時(shí),它將TTL遞減1。當(dāng)路由器收到TTL為1的數(shù)據(jù)包,并且目標(biāo)不是本地連接的網(wǎng)絡(luò)時(shí),路由器會(huì)返回ICMP錯(cuò)誤消息“超出生存時(shí)間”并丟棄數(shù)據(jù)包。這是為了限制路由環(huán)路的影響,否則會(huì)導(dǎo)致每個(gè)數(shù)據(jù)包無(wú)限循環(huán)。
Traceroute利用這個(gè)TTL來(lái)將路徑映射到特定的網(wǎng)絡(luò)目的地。它通過(guò)發(fā)送TTL為1的第一個(gè)數(shù)據(jù)包開始。第一個(gè)路由器(通常是默認(rèn)網(wǎng)關(guān))將發(fā)回ICMP超時(shí)生存時(shí)間錯(cuò)誤。發(fā)送數(shù)據(jù)包和接收ICMP錯(cuò)誤之間的時(shí)間是顯示的時(shí)間,與發(fā)送錯(cuò)誤的IP地址及其反向DNS(如果有)一起列出。在發(fā)送三個(gè)TTL為1的數(shù)據(jù)包并顯示它們的響應(yīng)時(shí)間后,它將TTL增加到2并發(fā)送三個(gè)數(shù)據(jù)包,注意第二跳的相同信息。 Traceroute遞增TTL并重復(fù)該過(guò)程,直到達(dá)到指定的目的地,或超過(guò)最大跳數(shù)。
Traceroute在Windows和類Unix操作系統(tǒng)(BSD,Linux,Mac OS X,Unix等)上的功能稍有不同。 Windows使用ICMP回應(yīng)請(qǐng)求數(shù)據(jù)包(ping),而類Unix系統(tǒng)默認(rèn)使用UDP數(shù)據(jù)包。 ICMP和UDP是第4層協(xié)議,并且traceroute在第3層完成,因此除了考慮策略路由配置時(shí),所使用的協(xié)議在很大程度上是不相關(guān)的。來(lái)自Windows客戶端的Traceroute將根據(jù)哪個(gè)規(guī)則允許ICMP回應(yīng)請(qǐng)求進(jìn)行策略路由,而類Unix客戶端將按照與正在使用的UDP端口相匹配的規(guī)則進(jìn)行路由。
在本例中,traceroute用于查看www.google.com的路由:
# traceroute traceroute: Warning: www.google.com has multiple addresses; using 74.125.95.99 traceroute to www.l.google.com (74.125.95.99), 64 hops max, 40 byte packets 1 core (172.17.23.1) 1.450 ms 1.901 ms 2.213 ms 2 172.17.25.21 (172.17.25.21) 4.852 ms 3.698 ms 3.120 ms 3 bb1-g4-0-2.ipltin.ameritech.net (151.164.42.156) 3.275 ms 3.210 ms 3.215 ms 4 151.164.93.49 (151.164.93.49) 8.791 ms 8.593 ms 8.891 ms 5 74.125.48.117 (74.125.48.117) 8.460 ms 39.941 ms 8.551 ms 6 209.85.254.120 (209.85.254.120) 10.376 ms 8.904 ms 8.765 ms 7 209.85.241.22 (209.85.241.22) 19.479 ms 20.058 ms 19.550 ms 8 209.85.241.29 (209.85.241.29) 20.547 ms 19.761 ms 209.85.241.27 (209.85.241.27) 20.131 ms 9 209.85.240.49 (209.85.240.49) 30.184 ms 72.14.239.189 (72.14.239.189) 21.337 ms 21.756 ms 10 iw-in-f99.google.com (74.125.95.99) 19.793 ms 19.665 ms 20.603 ms
輸出結(jié)果表明,它需要10跳才能到達(dá)那里,并且每次跳躍的延遲一般都會(huì)增加。
注意
在利用策略路由(如多WAN)時(shí),防火墻本身可能不會(huì)在traceroute中顯示為1“跳”。 使用策略路由時(shí),pf在轉(zhuǎn)發(fā)數(shù)據(jù)包時(shí)不會(huì)減少TTL,因此traceroute無(wú)法將其檢測(cè)為中間路由器。
根據(jù)所使用的v-p-n,路由可能不會(huì)顯示在遠(yuǎn)端的表中。 IPsec不使用路由表,而是使用IPsec安全策略數(shù)據(jù)庫(kù)(SPD)條目在內(nèi)核中進(jìn)行內(nèi)部處理。 靜態(tài)路由永遠(yuǎn)不會(huì)導(dǎo)致流量通過(guò)IPsec連接。 Open***使用系統(tǒng)路由表,因此對(duì)于通過(guò)Openv-p-n隧道可訪問(wèn)的網(wǎng)絡(luò),存在這樣的條目,如下例所示:
#netstat -rWn Routing tables Internet: Destination Gateway Flags Use Mtu Netif Expire default 198.51.100.1 UGS 92421 1500 em0 10.6.0.0/16 10.6.203.1 UGS 0 1500 o***c2 10.6.203.0/24 10.6.203.2 UGS 0 1500 o***c2 10.6.203.1 link#9 UH 0 1500 o***c2 10.6.203.2 link#9 UHS 0 16384 lo0 10.7.0.0/24 link#2 U 1260771 1500 em1 10.7.0.1 link#2 UHS 0 16384 lo0 127.0.0.1 link#7 UH 866 16384 lo0 198.51.100.0/24 link#1 U 1251477 1500 em0 198.51.100.7 link#1 UHS 0 16384 lo0
Openv-p-n接口為10.6.203.2,網(wǎng)關(guān)為10.6.203.1,接口為o***c2。 在這個(gè)例子中使用Openv-p-n可以訪問(wèn)的網(wǎng)絡(luò)是10.6.0.0/16。
對(duì)于IPsec,由于IPsec隧道本身沒有IP地址,因此跟蹤路由不如Openv-p-n這樣的路由設(shè)置有用。 當(dāng)通過(guò)IPsec將路由跟蹤運(yùn)行到目標(biāo)時(shí),將顯示作為IPsec隧道的跳躍超時(shí)。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。