萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 電腦故障排除 >  >> 電腦常見故障 >> 無法連上網路

解決內網用戶無法存取內部 Web 伺服器:NAT 回環與 DNS 閃躲實戰

企業以 ADSL 上網,僅獲一個合法公網 IP,內部架設 Web 伺服器,透過連接埠位址轉向(Port Forwarding)對外發布。外部用戶可正常瀏覽,但內部用戶使用公網域名(如 www.example.com)卻無法存取內部伺服器。此為典型 NAT 回環問題,解決方案如下。

一、基礎 NAT 與 Port Forwarding 設定

Router(config)#int e0
Router(config-if)#ip address 10.1.1.254 255.255.255.0
Router(config-if)#ip nat inside

Router(config)#int e1
Router(config-if)#ip address 202.1.1.1 255.255.255.252
Router(config-if)#ip nat outside

! 靜態 NAT:外部存取 202.1.1.1:80 → 內部 10.1.1.1:80
Router(config)#ip nat inside source static tcp 10.1.1.1 80 202.1.1.1 80

! 定義內網 ACL
Router(config)#access-list 1 permit 10.1.1.0 0.0.0.255

! PAT:內網主機共享公網 IP 上網
Router(config)#ip nat inside source list 1 interface e1 overload

! 預設路由指向 ISP
Router(config)#ip route 0.0.0.0 0.0.0.0 202.1.1.2

二、問題根因:NAT 回環缺失

內部用戶解析 www.example.com 獲得公網 IP 202.1.1.1,封包送至路由器 WAN 口,但路由器未將來源為內網、目的為自有 WAN IP 的流量導回內部伺服器,導致連線失敗。

三、解決方案:路由器內建 DNS 閃躲

在路由器建立本地 DNS 記錄,讓內部用戶解析域名時直接指向內部私網 IP,繞過公網繞路。

Router(config)#ip dns server
Router(config)#ip domain-lookup
Router(config)#ip name-server 202.96.64.68   ! 上層 DNS(視當地情況)
Router(config)#ip host www.example.com 10.1.1.1

內部主機 DNS 設定指向路由器 LAN IP(10.1.1.254)。

指令說明

  1. 啟用路由器 DNS 服務功能
  2. 啟用 DNS 外部查詢(預設開啟)
  3. 指定上層 DNS 伺服器位址
  4. 手動建立本地 DNS 記錄:域名 → 內部伺服器私網 IP

四、進階:路由器兼任 DHCP 伺服器

Router(config)#service dhcp
Router(config)#ip dhcp excluded-address 10.1.1.254
Router(config)#ip dhcp excluded-address 10.1.1.1
Router(config)#ip dhcp pool ABC
Router(dhcp-config)#network 10.1.1.0 /24
Router(dhcp-config)#dns-server 10.1.1.254
Router(dhcp-config)#default-router 10.1.1.254

注意:若路由器負載較重,建議另建獨立內部 DNS 伺服器。

copyright © 萬盛學電腦網 all rights reserved