1.
准备工作与选线建议
- 小分段1:确认需求(带宽、延迟、应用类型)。例如游戏/实时语音更看重延迟,缓存/下载更看重带宽与稳定性。
- 小分段2:评估运营商供应(联通/电信/移动及第三方 CDN/IXP)。优先选择标注有“CN2”或“CN2 GT/含CN2 GIA”字样的链路供应商。
- 小分段3:准备资料:ASN、本地公网IP段、联系人工单、RPKI/IRR 信息、验证邮件地址。
2.
建立BGP对等(邻居)基础配置
- 小分段1:确认本端 ASN 与对端 ASN、对端邻居 IP 与密码(md5)。
- 小分段2:Cisco IOS 示例:
router bgp 65001
neighbor 203.0.113.2 remote-as 45102
neighbor 203.0.113.2 description CN2-TW-IX
neighbor 203.0.113.2 password YOURMD5
network 198.51.100.0 mask 255.255.255.0
- 小分段3:记得开启同步相关、调试时使用 show ip bgp summary / show ip bgp neighbors。
3.
常见误区:直接照搬对端路由策略
- 小分段1:误区描述:把对端提供的 route-map、community、preference 全部直接复制,导致路由策略冲突或影响其他链路。
- 小分段2:解决办法:先在测试环境或专用路由表做灰度验证,逐条验证 community 与 as-path 变化对流量的影响。
- 小分段3:步骤:导出对端推荐策略到文本;逐条注释并以本地 route-map 逐项测试,再逐步放开。
4.
配置社区(community)与 AS-PATH 操作
- 小分段1:目的:通过 community 控制对端 NCC/上游的偏好或黑洞清洗。
- 小分段2:示例(Cisco):
ip community-list standard CN2_OUT permit 45102:100
route-map SET_COMM permit 10
set community 45102:100 additive
interface bgp neighbor ... route-map SET_COMM out
- 小分段3:注意不要重复添加相同 community 导致策略生效异常;用 show ip bgp
查看传播结果。
5.
误区:忽略 MTU 与 TCP MSS 导致分片
- 小分段1:问题表现为大包丢失或页面加载慢,尤其是经过隧道(GRE/IPSec)或 MPLS 时。
- 小分段2:解决办法:调整接口 MTU 或在防火墙上设置 TCP MSS 限制。
- 小分段3:Linux 举例:iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu;或者直接设置 interface mtu 1500/1400。
6.
误区:单向测试通过,误判线路双向可达性
- 小分段1:很多人只做 ping 或单方向 traceroute,没测回程(国内到台湾和台湾到国内)。
- 小分段2:解决办法:使用双端测试:从台湾服务器向国内测 RTT/丢包,以及从国内向台湾测;使用 mtr -r -c 100 或 iperf3 双向。
- 小分段3:如果回程不通,联络对端 NOC 要求检查 BGP 过滤或上游策略。
7.
流量工程:AS-PATH 预置与 MED 调整
- 小分段1:当有多条链路时,通过 AS-PATH prepend 人为降低某条链路的入站优先级。
- 小分段2:示例(Cisco 出站):route-map PREPEND permit 10
set as-path prepend 65001 65001 65001
neighbor 203.0.113.2 route-map PREPEND out
- 小分段3:注意:对等方可能忽略 prepend,需配合社区或协调上游。
8.
误区:不做路由过滤与安全策略
- 小分段1:风险是接受了对端错误或恶意的路由通告导致发动路由泄漏。
- 小分段2:解决办法:在 BGP 接口配置 prefix-list、route-map 限制仅接受自家授权前缀;开启 RPKI/ROA 验证。
- 小分段3:示例:ip prefix-list FROM_TW seq 5 permit 198.51.100.0/24 le 32;neighbor 203.0.113.2 prefix-list FROM_TW in。
9.
监控与告警:建立 SLA 测试与告警阈值
- 小分段1:建立基线:持续采样延迟、抖动与丢包率(建议每分钟采样)。
- 小分段2:工具:Prometheus + blackbox_exporter(icmp/tcp)、Zabbix、Site24x7;在两端部署探测器。
- 小分段3:告警示例:丢包>2% 连续5分钟或 RTT 超过基线200% 触发工单。
10.
误区:忽视 DNS 与 CDN 的配合
- 小分段1:有时链路正常但解析返回非最优边缘节点,导致访问体验差。
- 小分段2:解决办法:配合 DNS 地理解析或使用智能解析(例如基于 EDNS-Client-Subnet、GeoDNS),确保台湾用户指向 CN2 节点。
- 小分段3:测试:从台湾真实节点用 dig +trace 检查 A 记录是否指向预期 IP。
11.
部署后常用排错命令与流程
- 小分段1:BGP 基本检查:show ip bgp summary / show bgp ipv4 unicast neighbors / show route-map。
- 小分段2:连通性测试:mtr -r -c 100 <目标IP>;iperf3 -s / iperf3 -c -t 60 -P 4;traceroute -T 可检查 TCP 路径。
- 小分段3:若发现抖动或丢包,先在链路两端做同时抓包(tcpdump -i any host )并比对时间戳。
12.
回归验证与与供应商沟通要点
- 小分段1:当对端调整策略后,要保存前后 BGP table 快照并比对(bgpdump 或 show bgp)。
- 小分段2:与供应商沟通时提供:时间戳、丢包/延迟样本、traceroute 输出、BGP audit 快照与配置片段。
- 小分段3:明确要求:是否会做流量工程、是否有黑洞/清洗机制、故障时的应急联系人和SLA。
13.
问:部署台湾CN2后仍有丢包,我如何定位是回程问题还是本地网络问题? 答:
从双方同时做 mtr(或 traceroute + ping)开始:在台湾节点和国内节点各自对目标互测,观察哪一端出现丢包或跳点异常;同时抓包比对时间戳。如果仅一侧丢包,多为该侧链路或防火墙问题;若中间某一跳出现明显丢包,多为中间传输或对端上游问题,需把 traceroute 输出与运营商对接。
14.
问:服务上线后如何确保自动切换到备用链路? 答:
实现主动-被动切换可用两种方式:BGP本地优先级(更改 local-preference / AS-PATH prepend)配合健康检测脚本;或在边缘使用路由反向工程(如相应 route-map + community)并配合监控自动下调优先级。建议先在非高峰测试自动化切换并确认会话恢复策略(例如 TCP session 可能断开)。
15.
问:如果运营商提示需要做社区标记,我应该怎么配置并验证生效? 筜:
根据运营商提供的 community 值写入 route-map(或 set community 语句),对出站邻居应用。验证步骤:在本端 show ip bgp 查看发送到对端的属性,并要求对方在其路由表中 show routes 或提供 route-server 回执;同时在实际流量侧对比是否有路由优先级变化。
来源:部署台湾cn2线路 时常见配置误区与解决办法