我正在尝试使用 IOS 15 配置 Cisco 2901 路由器,以正确执行 LAN 和互联网连接之间的 NAT/PAT 转换。我已经为本地接口配置了 DHCP 池,它可以正常工作(即使使用额外的交换机、无线接入点等)。同样,WAN 接口配置为通过 ISP 的 DHCP 获取自己的 IP。我可以在 LAN 计算机上工作,并且可以直接从路由器访问互联网(例如,使用 telnet 和路由器的 ping 命令)。问题是,NAT 无法正常工作,并且来自 LAN 接口(GigabitEthernet0/1)的连接无法到达 WAN 接口(GigabitEthernet0/0)。
我已经关注了几个指南就此事,但似乎无论我做什么,NAT 似乎都不起作用。我尝试了interface GigabitEthernet0/0 overload
指南中描述的 NAT 内部源列表和 NAT 池源列表(即当前 ISP 分配的 IP)。
附件是完整的配置,希望有人能发现我错过的问题。
Current configuration : 2007 bytes
!
! Last configuration change at 19:59:30 UTC Wed Jul 6 2011
!
version 15.0
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname odin
!
boot-start-marker
boot-end-marker
!
enable secret 5 enablesecret
enable password enablepassword
!
no aaa new-model
!
!
!
!
no ipv6 cef
ip source-route
no ip routing
no ip cef
!
!
ip dhcp excluded-address 10.1.1.1 10.1.1.10
!
ip dhcp pool lan
import all
network 10.1.1.0 255.255.255.0
default-router 10.1.1.1
dns-server 8.8.8.8
!
!
!
multilink bundle-name authenticated
!
!
!
!
!
!
!
voice-card 0
!
!
!
!
!
!
license udi pid licensepid sn licensesn
!
!
!
redundancy
!
!
!
!
!
!
!
!
!
interface GigabitEthernet0/0
ip address dhcp
ip nat outside
ip virtual-reassembly
no ip route-cache
duplex auto
speed auto
no cdp enable
no mop enabled
!
!
interface ISM0/0
no ip address
no ip route-cache
shutdown
service-module fail-open
no cdp enable
!
hold-queue 60 out
!
interface ISM0/1
no ip address
no ip route-cache
shutdown
no cdp enable
!
!
interface GigabitEthernet0/1
ip address 10.1.1.1 255.255.255.0
ip nat inside
ip virtual-reassembly
no ip route-cache
duplex auto
speed auto
no cdp enable
!
!
ip forward-protocol nd
!
no ip http server
no ip http secure-server
!
ip nat inside source list 1 interface GigabitEthernet0/0 overload
ip route 0.0.0.0 0.0.0.0 GigabitEthernet0/0
!
access-list 1 permit 10.1.1.0 0.0.0.255
!
!
!
!
!
snmp-server community snmp_lan RO
!
control-plane
!
!
!
!
!
!
!
!
!
gatekeeper
shutdown
!
!
line con 0
exec-timeout 0 0
line aux 0
line 67
no activation-character
no exec
transport preferred none
transport input all
transport output pad telnet rlogin lapb-ta mop udptn v120 ssh
stopbits 1
flowcontrol software
line vty 0 4
password password
login
!
scheduler allocate 20000 1000
no process cpu extended
no process cpu autoprofile hog
end
更新 1:
尝试通过添加来指定出站规则
interface GigabitEthernet0/0
ip access-group lan_out out
!
ip access-list extended la_out
permit ip any any
但无济于事。
之后,还尝试使用 nat 池和路由图,结果
ip nat pool lan_np 1.2.3.135 1.2.3.135 prefix-length 24
ip nat inside source route-map natmap pool lan_np overload
ip route 0.0.0.0 0.0.0.0 GigabitEthernet0/0 permanent
!
ip access-list extended lan_out
permit ip any any
!
access-list 101 permit ip 10.1.1.0 0.0.0.255 any
!
!
!
!
route-map natmap permit 10
match ip address lan_out
有或没有 ISP 默认网关 IP 的任何组合ip route 0.0.0.0 0.0.0.0
。interface GigabitEthernet0/0
结果sh ip nat st
为
offblast_odin#sh ip nat st
Total active translations: 0 (0 static, 0 dynamic; 0 extended)
Peak translations: 0, occurred 02:58:27 ago
Outside interfaces:
GigabitEthernet0/0
Inside interfaces:
GigabitEthernet0/1
Hits: 0 Misses: 0
CEF Translated packets: 0, CEF Punted packets: 0
Expired translations: 0
Dynamic mappings:
-- Inside Source
[Id: 2] route-map natmap pool offblast_lan_np refcount 0
pool offblast_lan_np: netmask 255.255.255.0
start 1.2.3.135 end 1.2.3.135
type generic, total addresses 1, allocated 0 (0%), misses 0
Appl doors: 0
Normal doors: 0
Queued Packets: 0
可悲的是,迄今为止还没有任何效果。 完整的最终配置。
答案1
您能显示“sh ip nat stat”和“sh ip nat tran”的输出吗?
我认为配置看起来正确,您是否尝试在外部接口上应用 ACL 来专门允许流量?
接口 GigabitEthernet0/0 ip 访问组 OUTBOUND 出站 ! ip 访问列表扩展 OUTBOUND 允许任何 IP
以下是 1800 系列的一个工作示例:
接口快速以太网0 描述$FW_OUTSIDE$ 带宽 34000 IP地址 1.2.3.141 255.255.255.240 ip 访问组 OUTBOUND 出站 ip 验证单播反向路径 无 IP 重定向 无 IP 不可达 没有 ip 代理 arp ip nat 外部 ip 虚拟重组 加载间隔 60 自动双面打印 自动速度 ! 接口快速以太网1 描述$FW_INSIDE$ 带宽 34000 IP地址 192.168.0.254 255.255.255.0 无 IP 重定向 无 IP 不可达 没有 ip 代理 arp ip nat 内部 ip 虚拟重组 加载间隔 60 自动双面打印 自动速度 ! ip nat 池 GLOBAL_IP_POOL 1.2.3.139 1.2.3.141 前缀长度 24 ip nat inside 源路由图 natmap 池 GLOBAL_IP_POOL 过载 ! ip 访问列表扩展 natrules 拒绝 IP 192.168.0.0 0.0.0.255 10.180.3.0 0.0.0.255 允许 ip 192.168.0.0 0.0.255.255 任意 ! 路由图 natmap 允许 10 匹配 ip 地址 natrules
希望这可以帮助。
編輯:
我没有发现您的配置有什么奇怪之处。由于您似乎根本没有找到转换表,因此客户端的连接或配置一定存在问题,或者只是访问列表拒绝了流量。
你可以吗:
1)从路由器 ping 一下,确保从正确的接口执行此操作,输入:
ping 8.8.8.8 源 10.1.1.1
2)显示访问列表
显示访问列表
我在实验室里设置了三个路由器,并配置了rip+nat,一切正常。 有问题的路由器和远程路由器明确拒绝“相关路由器”的内部网络。
答案2
由于这个问题现在已经有超过 1000 次浏览(哇啊),我会发布准确的答案:从我后来被告知的情况来看(在使用@3molo发布的一些配置之后),
no ip routing
是导致 NAT 无法正常工作的原因(事后看来,非常明显)。