路由器上面输入命令查看是否有nat会话记录。
display nat session命令用来显示NAT会话,即经过NAT地址转换处理的会话。
---------------------------------------------------------------------------------
这个acl有问题啊,只有禁止,没有permit,其他的咋通呢。
接口下配置不应该是丢弃命中,放行其他所有吗?
interface GigabitEthernet0/7
packet-filter name WebPing9 inbound
ACL WebPing9:
acl advanced name WebPing9
rule 1 deny icmp icmp-type echo
高级 ACL 默认最后一条:rule deny ip any any
👉 inbound 是外网往路由器方向的流量:内网访问互联网,外网的回程响应报文(TCP、UDP)从 G0/7 进来,命中末尾隐式 deny,直接丢弃!
NAT 会话建立流程:内网发包→做源 NAT,向外网发出;必须收到外网回来的报文,设备才会生成并维持 NAT 会话表项。回程包被 ACL 干掉,NAT 会话根本建不起来,所以
display nat session为空。 你本意只是想禁止外网 ping 路由器(deny icmp echo-request),但是漏写 permit,把所有外网回程流量全部拦死了。
补充区分:
- icmp-type echo:echo-request(ping 请求包);echo-reply 是 ping 应答,不是 echo inbound 方向:外网 → 路由器,包含 NAT 业务回程 TCP/UDP/ICMP 应答
acl advanced name WebPing9
rule 1 deny icmp icmp-type echo
rule 5 permit ip any any
保存,立即生效。
作用:只拦外网主动 ping,外网回来的网页、业务、DNS 等回程报文全部放行,NAT 回程报文正常通过,会话可以正常生成。
把packet-filter删掉,改用黑洞 / 防攻击策略、或者在 nat server 前面放 ACL,不要在外网接口 inbound 挂只有 deny ping 的不完整 ACL。
interface GigabitEthernet0/7
undo packet-filter name WebPing9 inbound
不推荐直接删掉过滤,如果你需要防外网 ping,优先方案 1。
nat outbound 不带 acl,代表所有报文都做源 NAT,这条语法本身没问题;如果后面还要做分流 NAT 才需要加 acl,当前写法语法合法,不是故障点。nat server配置语法没问题,在 ACL 修好之后外网才能访问映射端口。display nat session
此时可以看到会话条目。 2. 外网尝试 ping 60.160.178.77,依然无法 ping 通(符合你原本 “过滤 ping 业务” 的需求) 3. 内网 ping 外网地址、网页访问正常。
很多人踩这个坑:
inbound ACL 管从外网进来所有流量,不仅仅是外网主动发起访问;内网访问外网的回程包也是 inbound 流量,只要 inbound ACL 最后隐式 deny,NAT 回程直接断,现象就是 NAT 会话 0 条。 outbound ACL 才管内网 NAT 出去的流量。
system-view
acl advanced name WebPing9
rule 5 permit ip any any
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
先测试再说