發表文章

NAT loopback 實驗

圖片
通常企業為了安全會建立內部DNS和外部DNS, 如果我有一個IP 192.168.1.151 要對應到公司內部電腦01 192.168.168.1的WEB服務, 我會在外部DNS設一筆紀錄要到 www.abc.com.tw 的回應 192.168.1.151, 企業內部主機都指向內部DNS 設一筆紀錄要到 www.abc.com.tw 的回應 192.168.168.1。 這樣就可以做到同樣的WEB服務內部和外部都可以存取。 但是有時候公司沒有架設DNS,或是主機都指向外部DNS 168.95.1.1 或 8.8.8.8。 這時候就需要NAT LOOPBACK了。 簡單來說就是電腦02連192.168.1.151這個在WAN的外部IP,可以也可以NAT存取到192.168.168.1。 以Sonicwall防火牆來舉例,當你NAT建立好了時候會產生三條。 第一條為內部IP網段(192.168.168.0/24)要到WEB PUBLIC(192.168.1.151) 來源轉換為WEB PUBLIC(192.168.1.151)到WEB PRIVATE(192.168.168.1) 第二條為WEB PRIVATE(192.168.168.1)到任何地方(WAN的網段) 來源轉換為WEB PUBLIC(192.168.1.151)到原本的任何地方(WAN的網段) 第三條為任何網段要到WEB PUBLIC(192.168.1.151) 來源不轉換可是目的地轉換為WEB PRIVATE(192.168.168.1) 這個跟防火牆規則一樣由上到下,先執行就出去了,有先後順序之分。 二、三條很好理解,就是純粹外對內的NAT,但是為什麼需要第一條呢? 電腦02封包 電腦01封包 (因為我分段抓封包,所以不是同一個回應封包) 我們來分析一下,以電腦02來說 電腦02到防火牆 來源 192.168.168.2-> 目的地 192.168.1.151 因為我們設定好NAT要到 192.168.1.151 目的地轉換為 192.168.168.1 所以防火牆到電腦01 來源 192.168.168.2-> 目的地 192.168.168.1 最後電腦01發現目的地是 192.168.168.2,同個網...

ESXI與時間校時

圖片
我認為裝完ESXI之後最重要的第一步不是建立虛擬機,而是時間校時,理由如下。 裝好虛擬機之後,發現滑鼠很頓很難操作,大家一定先安裝Vmware Tools,它包含了很多虛擬機用的驅動程式,像是網卡、顯卡,但是裝完之後發現虛擬機時間怎麼怪怪的。 原來是因為ESXI的時間沒有校時,所以當Vmware Tools裝好的時候,他的時間就跟ESXI同步了,時間在現在的環境非常重要,像是驗證什麼的,如果兩邊時間不同步的話,很常造成問題。 按內容編輯,勾選已啟動NTP用戶端,然後點選選項。 點選隨主機一起啟動和停止,服務命令啟動。 NTP設定新增 211.22.103.157,如果你有設定DNS的話可以新增下列常用五組。 tock.stdtime.gov.tw watch.stdtime.gov.tw time.stdtime.gov.tw clock.stdtime.gov.tw tick.stdtime.gov.tw 由於NTP是同步比較慢的協定,常常等超過半小時才同步,紅色表示時間沒有校正。 等了五分鐘才同步,虛擬機重開機之後時間就正常了。

郵寄伺服器如何寄信給對方

圖片
我們要寄信給XXX@gmail.com,郵寄伺服器第一要找的是對方DNS的MX紀錄。 我們用命令提示字元nslookup指令找到gmail.com的mx紀錄有一筆gmail-smtp-in.1.google.com的 MX preference 5 最低,所以會優先寄到這個smtp server。 因為DNS對機器沒有意義,所以再把 gmail-smtp-in.1.google.com正解成IP 74.125.204.27。 我們可以telnet 74.125.204.27 的 25 port,確實有看到一些smtp的訊息。 如果我們自己架設DNS,可以參考下列的設法。 主機名稱 記錄類型 MX優先權 IP/主機名稱 abc.com.tw MX 10 mail.abc.com.tw mail.abc.com.tw A 168.22.1.2 abc.com.tw MX 20 mail2.abc.com.tw mail2.abc.com.tw A 168.22.1.3 abc.com.tw有兩筆MX紀錄為 mail.abc.com.tw 優先權為10,mail2.abc.com.tw 優先權為20。 因為 mail.abc.com.tw 的優先權較高,所以會採用這個,然後他的A紀錄為 168.22.1.2,所以他會寄信到 168.22.1.2的25 port。

Fortigate WAN 負載平衡練習

圖片
我的架構圖如上,就是簡單兩個LAN和兩個WAN做負載平衡。 第一種方法:平常用Seednet線路,Seednet線路不通的時候走Hinet線路。 (PS:以下LAB我內對外政策都全開,做PAT上網。) 先設定路由, 0.0.0.0/0.0.0.0  192.168.5.254 AD值為10 0.0.0.0/0.0.0.0  192.168.4.254 AD值為11 由於到Seednet線路的AD值比Hinet線路好,所以路由表會選擇 192.168.5.254。 這時候我們再去新增線路品質偵測,讓他去ping hinet dns,如果失敗的話就判斷線路不通,移除路由表。 為什麼我們要用線路偵測還不是用介面up和down來判斷呢?因為通常你的防火牆都是接在小烏龜上,所以就算介面是up,還是無法上網,因為ISP遠端機房有問題,通常都是用線路偵測來判斷,如果無法到達168.95.1.1,我們就認為無法上網,要趕緊切換線路。 確實從Seednet 118開頭切到 36開頭Hinet線路,並且掉了6個封包才切換。 查看LOG有看到兩行, Link Monitor changes state from ok to failed, protocol: ping Static route is removed. Route: (192.168.5.253->168.95.1.1 ping-down) 路由表目前出現的 0.0.0.0/0.0.0.0  192.168.4.254 AD值為11 這條,所以員工都會這邊走。 等到Seednet線路OK之後又會切回來,因為過程差不多,這裡我就不示範了。 這種方式比較屬於備用線路,台灣老闆比較不喜歡,怎麼可以買一條線路都不去用他,所以我沒有客戶這樣設定過。 第二種方法:全體員工(172.16.100.0/24)用Hinet線路,只有大頭(172.16.200.0/24)走Seednet線路。 首先先設定一條預設路由往192.168.4.254 Hinet Gateway丟。 然後設定一條政策路由,172.16.200.0/24(大頭)都往192.168.5.254 Seednet Gateway丟...