src-nat是源位址轉換,其作用是將ip資料報的源位址轉換成另外乙個位址。
action 這是說明用的哪種轉換方式,通常我們用masqurade,nat這兩種,在特殊情況下用accept(主要是內網中有公網位址存在的情況)方法
引數說明
protocol
說明對哪些傳輸協進行轉換(通常有tcp,udp等)
out-inte***ce
說明通過哪乙個網絡卡進行轉換(通常是外網絡卡outside)
to-src-address
是將源位址偽裝成哪些位址(可以是乙個也可以是很多個)
to-src-pot
是將源埠偽裝成哪些埠(可以是乙個也可以是很多個)
dst-address
是指發向哪些主機的資料報要進行偽裝(可以乙個可以多個)
dst-port
是指發向哪些埠的資料報進行偽裝(可以乙個可以多個)
src-address
是指對哪些源位址進行偽裝(可以乙個可以多個)
src-port
是指從哪些源埠發出的資料報進行偽裝(可以乙個可以多個)
要做src-nat,除了指明協議、埠、轉換成什麼位址外,還要談到是在那塊網絡卡(介面)上做這個「源位址位址轉換」。
比如,要讓內網的電腦通過ros訪問外網,那麼就由與公網連線的網絡卡做snat,在新增src-nat規則時,general頁的out. inte***ce就應選"外網絡卡",當然,用預設設定"all"也就包含了"外網絡卡",但這不利於理解src-nat。理解了src-nat ,dst-nat就很好理解了,src-nat是ros將內網電腦發出的資料報的位址中的源位址進行轉換然後發往外網,在資料報中,被轉換的位址是源位址,所以叫源位址轉換,而dst-nat則剛好相反,它是ros將公網發來的資料報的位址中的目的位址進行轉換(當然這個目的位址就是ros的公網ip),然後發給內網的電腦,在資料報中,被轉換的位址是目的位址,所以叫目的位址轉換。同樣,dst-nat除了指定轉換後的位址外,也將涉及是在那塊網絡卡(介面)上進行,例如,要將公網發給ros的a埠的資料報轉給內網ip為b的c埠,那麼設定好a、b、c的值後,在dst-nat規則general頁的in.inte***ce裡,應選擇與b位址網段相連的網絡卡(介面),顯然這是一塊內網絡卡,當然,用預設設定"all"也就包含了這塊"內網絡卡",但這不利於理解dst-nat。到這裡可以明白什麼是埠映**,它就是dst-nat中的一條轉換規則。
再來談"回流",引用一段文字--"什麼叫回流呢?就是當內網有服務對映到閘道器後,內網主機也可以用閘道器外部位址訪問"。
由上面的定義可以清楚"回流"要完成的操作:
1、內網電腦向ros傳送目的位址為公網ip的資料報(當然這個ip就是ros的公網ip)
2、ros通過源位址轉換規則(src-nat)中選定的a網絡卡(介面)將資料報位址中的源位址轉換為公網ip(目的位址不變,仍為公網ip)
3、ros通過目的位址轉換規則(dst-nat)中選定的b網絡卡(介面)將資料報位址中的目的位址轉換為內網位址,然後發給相應的內網電腦。
但是問題來了,如果a網絡卡(介面)將資料報位址轉換後就往公網傳送,那麼資料報就無法再回到路由器並**給內網了。如果能讓資料報不出路由器,在路由器內完成src-nat和dst-nat這兩種位址轉換,那麼就可以實現回流了。呵呵,讓a=b就可以實現了。就是說,新增一條src-nat和一條dst-nat規則,而這兩條規則中所指定的網絡卡都是與內網相連的同一塊網絡卡。
Cache control引數說明
header中的cache control引數說明 php編碼 網頁的快取是由http訊息頭中的 cache control 來控制的,常見的取值有private no cache max age must revalidate等,預設為private。其作用根據不同的重新瀏覽方式分為以下幾種情況 ...
nmap引數說明
目標規範 可以通過主機名,ip位址,網路等 例 scanme.nmap.org,dream4.org 24,192.168.0.1 10.0.0 255.1 254 il 從指定檔案獲取主機或網路 ir 隨機選擇主機,0 不限制掃瞄主機數 exclude 排除指定主機或網路 excludefile ...
toString引數說明
格式化數值 有時,我們可能需要將數值以一定的格式來呈現,就需要對數值進行格式化。我們使用格式字串指定格式。格式字串採用以下形式 axx,其中 a 為格式說明符,指定格式化型別,xx 為精度說明符,控制格式化輸出的有效位數或小數字數。格式說明符 說明 示例 輸出 c 貨幣 2.5.tostring c...