公司目前有2個辦公室,兩邊透過VPN連線,
分為網段1: 192.168.0.0/24
分為網段2: 192.168.1.0/24
郵件系統是在網段2中 (IP: 192.168.1.30)。
網段1的DHCP 設定的內部的DNS有2個,
DNS1: 192.168.0.35 (架在 Win Server 2008)
DNS2: 192.168.0.5 (架在 Linux)
網段1的Client PC打開郵件系統( mail.xyz.com.tw/webmail )時,
常常找不到網站,若改為IP(192.168.1.30/webmail)就能馬上連入系統。
有此情形出現時,並非全部網段1中的Client都不能連到mail系統,
很少接到一次很多人反應,大多是單獨個案,而且..不是只有固定幾台會有這個情形。
不確定是否只有mail系統有會DNS解析不到的情形,因為只有mail系統是辦公室最多人也最常使用的。
C:\Users\Admin> ping mail.xyz.com.tw
Ping 要求找不到主機 mail。請檢查名稱,然後再試一次。
C:\Users\Admin> ping mail
Ping 要求找不到主機 mail.xyz.com.tw。請檢查名稱,然後再試一次。
C:\Users\Admin> ping 192.168.1.30
Reply from 192.168.1.30 bytes=32 time=14ms TTL=59
Reply from 192.168.1.30 bytes=32 time=14ms TTL=59
Reply from 192.168.1.30 bytes=32 time=14ms TTL=59
Reply from 192.168.1.30 bytes=32 time=14ms TTL=59
...
Ping不到domain name,但可以ping到IP,所以認為是DNS問題。
cmd輸入nslookup得到,再輸入mail
C:\Users\Admin>nslookup
Default Server: win-0op449uh43n.xyz.com.tw
Address: 192.168.0.35
> mail
Server: win-0op449uh43n.xyz.com.tw
Address: 192.168.0.35
Name: mail.xyz.com.tw
Address: 192.168.1.30
> mail.xyz.com.tw
Server: win-0op449uh43n.xyz.com.tw
Address: 192.168.0.35
Name: mail.xyz.com.tw
Address: 192.168.1.30
nslookup 是可以找到mail.xyz.com.tw,
回到cmd,ping mail 或mail.xyz.com.tw,
依然是ping不到,而ping 192.168.1.30則是沒問題的。
當下輸入 ipconfig /displaydns,裡面有一行顯示如下
C:\Users\Admin> ipconfig /displaydns|more
Windows IP Configuration
mail.xyz.com.tw
-----------------------
Name Does Not Exist.
接下來,通常過一陣子,就ping這個domain name,郵件也進得去,然後整天都OK。
有時候過一陣子,ping得到,郵件也進得去,但過一下子又ping不到,但郵件依然可以進入。
找不到原因,最後妥協,只好在主機裡的hosts檔設定...
目前正常的情況下,ipconfig /displaydns|more的結果為
C:\Users\Admin> ipconfig /displaydns|more
Windows IP Configuration
mail.xyz.com.tw
-----------------------
Record Name . . . . . : mail.xyz.com.tw
Record Type . . . . . : 1
Time To Live . . . . : 2538
Data Length . . . . . : 4
Section . . . . . . . : Answer
A (Host> Record . . . : 192.168.1.30
還是說,內部DNS跨不同網段,需要作不同的設定嗎?
請各位先進幫忙剖析原因及提供測試方向...謝謝
你找到關鍵點,但是找問題的方法不對,無法解析正常mail伺服器的時候,
你只有檢查一台主機的DNS紀錄,你應該要在異常的PC端去使用Nslookup去檢查
先做ipconfig /all 確認網卡所有DNS沒有被修改過,
再用Nslookup去對第一台DNS與第二台DNS確認兩邊解析出來的IP沒有錯誤
如果出現DNS紀錄都沒有錯誤的情況下,清除異常端的DNS快取 ipconfig /flushdns
用Ping mail 去觸發DNS查詢,再檢查是否得到正常的IP位置,
如果用戶端還是拿到錯誤的IP,你應該去檢查異常PC的local DNS
在Windows的系統上 local DNS 位置在 C:\Windows\System32\Drivers\etc\Hots
在lunux系統上 local DNS 位置在 /etc/nsswitch.conf
另外固定的服務的IP在DNS上面,以防萬一,請把它固定成靜態IP紀錄,別用動態,
如果有個小白在你們公司裡面,改了一台PC名稱跟你的mail Server名稱一樣,
你DNS安全性設定又不夠嚴謹,那台拿著不同IP卻一樣名稱的PC是有可能串改掉DNS裡面的IP紀錄的
然後你的正常Mail Server 又把它改回去,DNS紀錄一下正常一下異常,
你有把DNS修改紀錄做成LOG方便出問題的時候查看嗎?
感謝回覆。因為不知道什麼時候才會再遇到這樣的情形,所以不能說測就測...文章內容的測試都是在異常PC做的測試(也是我所使用的PC)。
根據你的回覆,整理如下,有錯請指正
(在異常的PC端)
DNS Server上的mail原本就設靜態。
「你有把DNS修改紀錄做成LOG方便出問題的時候查看嗎?」
請問是指在DNS Server端嗎?
十分感謝
跨不同網段會有路由問題,在對外的dns沒差,對內的有差,所以問題不是很難找的出來
你應該可以在網段1 加上1台dns server ,加上幾個(A Record) 192.168.1.x 網段的 server。
這不是就解了嗎?