目前是 pppoe拨号,配置如下,内部设备ipv6已经正常了,现在只想让外网访问内部某个终端 的某个端口号,这个该如何控制
#
interface Dialer0
mtu 1492
ppp chap password 123
ppp chap user 123
ppp ipcp dns admit-any
ppp ipcp dns request
ppp pap local-user123 password 123
dialer bundle enable
dialer-group 1
dialer timer idle 0
dialer timer autodial 60
ip address ppp-negotiate
tcp mss 1360
ipv6 mtu 1420
nat outbound
ipv6 address auto
ipv6 address dhcp-alloc
ipv6 dhcp client pd 1
#
interface Vlan-interface1
ipv6 address 1 123::123:1:1/64
ipv6 nd autoconfig other-flag
ipv6 nd ra dns server 240C::6666 infinite sequence 1
#
暂无评论
MSR3610-XS PPPoE IPv6 端口映射(外网仅放行指定终端指定端口)完整配置
核心原理说明
IPv4 用 NAT Server 端口映射,IPv6 无 NAT,公网前缀直接路由可达,必须用IPv6 包过滤 ACL做访问控制 + 静态路由指向内网终端;
你的 Dialer0 通过ipv6 dhcp client pd 1从运营商获取公网 / 64 前缀,内网 Vlanif1 下发子网123::123:1::/64;
需求:仅允许互联网访问内网单台 IPv6 终端指定端口,拒绝外网所有其他入站流量。
步骤 1:确认内网目标终端完整 IPv6 全局地址
先在内网设备查看自身 IPv6(示例:123::123:1:100,端口 TCP 8080)
plaintext
# 路由器验证连通性
ping ipv6 123::123:1:100
步骤 2:创建 IPv6 ACL,精准放行外网指定端口,全量拒绝其余入站流量
plaintext
system-view
# 创建IPv6高级ACL,过滤从互联网(Dialer0入方向)流量
acl ipv6 advanced 3000
# 规则1:仅允许外网访问目标终端TCP 8080端口
rule permit tcp destination 123::123:1:100 0 eq 8080
# 可选:如需UDP端口额外加一条
# rule permit udp destination 123::123:1:100 0 eq 9000
# 兜底规则:拒绝所有其他外网主动访问内网任何IPv6地址、任何端口
rule deny ipv6 destination 123::123:1:: 64
步骤 3:将 ACL 绑定到 PPPoE 外网 Dialer0 接口入方向(关键)
外网所有入站流量先经过接口 inbound 过滤,不符合 ACL 直接丢弃
plaintext
interface Dialer0
traffic-filter inbound acl ipv6 3000
步骤 4:确保运营商 IPv6 前缀路由下发正常(你现有配置已满足,核对即可)
plaintext
# 查看PD获取的公网前缀分配池
display ipv6 prefix-delegation
# 查看Dialer0公网IPv6地址
display ipv6 interface Dialer0 brief
# 查看内网Vlanif1 RA是否正常下发网段
display ipv6 nd ra interface Vlan-interface 1
你配置里ipv6 dhcp client pd 1会自动把运营商公网 IPv6 前缀路由下发到内网 Vlanif1,无需额外静态路由。
步骤 5:补充可选加固规则(按需添加到 acl ipv6 3000)
场景 1:允许外网 ping 测试该终端,其余 ICMP 拒绝
plaintext
rule permit icmpv6 destination 123::123:1:100 0 type echo-request
rule deny icmpv6 destination 123::123:1:: 64
场景 2:仅允许指定公网 IP 访问内网端口(最小权限推荐)
plaintext
rule permit tcp source 240e:xxxx::/32 destination 123::123:1:100 0 eq 8080
步骤 6:配置校验 & 排错命令
plaintext
# 查看IPv6 ACL匹配计数,外网访问端口会命中permit规则
display acl ipv6 3000
# 查看接口流量过滤绑定状态
display current-configuration interface Dialer0 | include traffic-filter
# 查看IPv6路由,确认内网网段路由有效
display ipv6 routing-table
# 测试外网访问,抓包看过滤丢弃报文
debugging ipv6 packet
terminal monitor
terminal debugging
关键踩坑说明
IPv6 没有 NAT Server,不能像 IPv4 那样做端口映射,依靠 ACL 访问控制隔离外网;
traffic-filter inbound必须绑定在 Dialer0,不能绑内网 Vlanif 接口,否则过滤不生效;
ACL 规则顺序不能颠倒:放行指定端口写前面,deny 所有内网流量放最后;
若运营商下发多个 PD 前缀,确认内网终端获取的 IPv6 网段和 ACL 里destination网段完全一致;
路由器自身管理 IPv6 地址默认会被 ACL 阻断,如需外网管理路由器 HTTPS,单独加放行规则:
plaintext
rule permit tcp destination Dialer0的公网IPv6 eq 443
极简流程总结
用acl ipv6 advanced 3000放行目标终端指定端口,拒绝其余内网访问;
interface Dialer0绑定traffic-filter inbound acl ipv6 3000;
保存配置save,外网仅能访问你放开的终端端口,其余入站流量全部拦截。
暂无评论
# 创建IPv6高级ACL(以3000为例)
[H3C] ipv6 acl advanced 3000
# 允许外网访问内部指定终端的特定端口(假设目标IPv6为 240C::123:1:1,端口为 8080)
[H3C-ipv6-acl-adv-3000] rule permit tcp destination 240C::123:1:1/128 destination-port eq 8080
# 拒绝所有其他来自外网的IPv6入站流量(注意:此规则会阻断所有其他外部主动访问)
[H3C-ipv6-acl-adv-3000] rule deny ipv6[H3C] interface Dialer0
[H3C-Dialer0] ipv6 traffic-filter 3000 inbounddeny ipv6,可能会导致内网终端的 IPv6 连接异常或无法上网。deny ipv6 之前,补充放通基础的 ICMPv6 报文:# 在 deny ipv6 之前添加以下规则,放通必要的ICMPv6
[H3C-ipv6-acl-adv-3000] rule permit icmpv6暂无评论
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
暂无评论