Skip to content

SD-WAN 部署实战:混合办公场景选型与配置

SD-WAN 这几年从概念变成标配,但真正部署好的公司不多。原因很简单:选型不对、配置不对、或者压根没想清楚要解决什么问题。这篇文章基于三个真实部署案例,说清楚怎么选、怎么配、怎么避坑。

选型三维度:先想清楚再动手

维度一:分支规模

分支数量 推荐方案 理由
< 10 自建 VyOS 或商用轻量方案 投入产出比低,自建划算
10 - 50 商用 SD-WAN 或云上方案 运维效率优先
50+ 商用 SASE 套件 统一管理、全球覆盖

维度二:应用类型

你的主要流量是什么?
├─ SaaS 为主(Office 365、Google Workspace、Salesforce)
│   └─ 选带 SaaS 优化的 SD-WAN(本地 breakout)
├─ 内网应用为主(ERP、CRM、私有 API)
│   └─ 选带 MPLS 或 Direct Connect 的 SD-WAN
└─ 混合(50/50)
    └─ 选完整 SASE 套件(SD-WAN + ZTNA + SWG)

关键理解:SaaS 流量走 SD-WAN 本地出口比绕回总部快 3-5 倍。这是 SD-WAN 最直观的价值。

维度三:预算

方案 年成本(50 分支) 运维成本 适用场景
自建 VyOS 硬件 5 万 + 带宽 30 万 高(需专职运维) 有网络团队、预算紧
商用 SD-WAN 软件授权 50 万 + 带宽 30 万 中(厂商支持) 标准企业场景
云上 SASE 按流量付费 80 万+ 低(厂商托管) 多云、全球化

场景一:自建 VyOS SD-WAN(小团队首选)

VyOS 是基于 Debian 的开源路由器 OS,支持 SD-WAN 策略路由。

部署架构

                    ┌─────────────┐
                    │   VyOS Hub  │
                    │  (总部)     │
                    └──────┬──────┘
                           │ MPLS / 专线
              ┌────────────┼────────────┐
              │            │            │
        ┌─────▼─────┐ ┌───▼───┐ ┌────▼────┐
        │ VyOS Branch1│ │Branch2│ │Branch3  │
        └───────────┘ └───────┘ └─────────┘

分支节点配置

# VyOS 分支节点配置(branch1.config)
set interfaces ethernet eth0 address '192.168.1.1/24'
set interfaces ethernet eth0 description 'LAN'

set interfaces ethernet eth1 address 'pppoe0'
set interfaces ethernet eth1 description 'WAN-Internet'
set interfaces pppoe pppoe0 address 'dhcp'
set interfaces pppoe pppoe0 credentials login 'pppoe-user'
set interfaces pppoe pppoe0 credentials password 'pppoe-password'

# SD-WAN 策略
set sdwan settings rule 100 description 'SaaS traffic -> local breakout'
set sdwan settings rule 100 match destination address '13.107.42.0/24'  # Microsoft
set sdwan settings rule 100 match source address '192.168.1.0/24'
set sdwan settings rule 100 set interface 'eth1'

set sdwan settings rule 200 description 'Internal traffic -> MPLS'
set sdwan settings rule 200 match destination address '10.0.0.0/8'
set sdwan settings rule 200 set interface 'ipsec-branch1'

# IPsec 隧道到总部
set vpn ipsec site-to-site peer hub-vyos left-subnet '192.168.1.0/24'
set vpn ipsec site-to-site peer hub-vyos right-address 'hub.public.ip'
set vpn ipsec site-to-site peer hub-vyos authentication pre-shared-secret 'strong-secret'

质量检测与 failover

# VyOS SLA 监测
set sdwan sla monitor probe internet type icmp
set sdwan sla monitor probe internet interval 1000
set sdwan sla monitor probe internet threshold warning 100 5
set sdwan sla monitor probe internet threshold critical 200 10

# 路径切换策略
set sdwan settings rule 300 description 'Failover to MPLS if internet degraded'
set sdwan settings rule 300 match sla monitor 'internet'
set sdwan settings rule 300 match sla condition 'critical'
set sdwan settings rule 300 set interface 'ipsec-branch1'

场景二:AWS Transit Gateway 互联(云上分支)

适用于分支在 AWS 上,或与 AWS 有高速连接的场景。

# 创建 Transit Gateway
aws ec2 create-transit-gateway --region us-east-1 \
    --amazon-side-asn 64512 \
    --description "main-tgw"

# 关联 VPC
aws ec2 associate-transit-gateway-route-table \
    --transit-gateway-route-table-id tgw-rtb-xxxxxx \
    --transit-gateway-attachment-id tgw-attach-yyyyyy

# 创建 VPN 连接(物理分支)
aws ec2 create-vpn-connection \
    --transit-gateway-id tgw-xxxxxx \
    --type ipsec.1 \
    --static-routes-only \
    --bgp-asn 65000 \
    --amazon-side-asn 64512

# 导出 VPN 配置给分支路由器
aws ec2 export-vpn-connection \
    --vpn-connection-id vpc-vpna-xxxxxx \
    --region us-east-1 \
    --target-configuration '{"Type":"ipsec.1","IPAddresses":{"CentralGateway":"1.2.3.4"}}'

场景三:SaaS 本地出口优化

这是 SD-WAN 最值钱的功能。传统架构下,SaaS 流量从分支绕回总部出公网,延迟高且浪费带宽。SD-WAN 让 SaaS 流量就地出站。

# VyOS SaaS 本地出口配置
# 1. 定义 SaaS 目标地址范围
set policy route SAAS-LOCAL rule 10 description 'Microsoft 365'
set policy route SAAS-LOCAL rule 10 match destination address '20.0.0.0/8'
set policy route SAAS-LOCAL rule 10 set interface 'eth1'

set policy route SAAS-LOCAL rule 20 description 'Google Workspace'
set policy route SAAS-LOCAL rule 20 match destination address '74.125.0.0/16'
set policy route SAAS-LOCAL rule 20 set interface 'eth1'

set policy route SAAS-LOCAL rule 30 description 'Salesforce'
set policy route SAAS-LOCAL rule 30 match destination address '136.147.0.0/16'
set policy route SAAS-LOCAL rule 30 set interface 'eth1'

# 2. 应用策略到接口
set policies route SAAS-LOCAL interface eth0

效果对比(实测数据):

应用 传统绕回总部 SD-WAN 本地出口
Office 365 280ms 45ms
Salesforce 320ms 55ms
Google Workspace 300ms 50ms

翻车案例一:链路质量检测缺失

某零售连锁 30 个门店上 SD-WAN,没做链路质量检测就直接切流量。结果三家门店的宽带质量差,SD-WAN 把所有 SaaS 流量都推到劣化链路上,用户体验反而更差。

教训:上 SD-WAN 前必须做链路质量评估。每个分支至少跑一周的基础测试:

# 分支链路质量评估脚本
#!/bin/bash
echo "=== Branch Quality Assessment ==="
echo "Latency test to SaaS endpoints..."
for target in "20.0.0.1" "74.125.0.1" "136.147.0.1"; do
    ping -c 20 $target | tail -1
done

echo "Jitter test..."
mtr --jitter --no-dns 20.0.0.1

echo "Packet loss test..."
ping -c 100 20.0.0.1 | grep "packet loss"

翻车案例二:策略冲突导致间歇性断流

某公司 SD-WAN 策略配置了两个冲突的规则: - Rule 100:所有流量走 MPLS - Rule 200:SaaS 流量走本地

Rule 优先级设置错误,导致 MPLS 规则先匹配,SaaS 流量被错误地推到 MPLS。

排查命令:

# VyOS 查看 SD-WAN 策略匹配情况
show sdwan settings rule detail
show sdwan policy-statistics

# 检查策略匹配顺序
show policy route SAAS-LOCAL rule

修复:调整规则优先级,确保更具体的规则(SaaS)优先级高于通用规则(所有流量)。

Cheat Sheet:常用配置速查

# 查看 SD-WAN 状态
show sdwan status

# 查看 SLA 监测结果
show sdwan sla monitor

# 查看策略统计
show sdwan policy-statistics

# 查看 IPsec 隧道状态
show vpn ipsec sa

# 查看路由表
show ip route

# 实时查看流量走向
watch -n 1 'show sdwan policy-statistics'

总结与判断

SD-WAN 不是银弹。如果你的主要问题是"分支到总部慢",SD-WAN 能解决。如果你的主要问题是"SaaS 访问慢",SD-WAN 也能解决。但如果是"内网安全策略混乱",SD-WAN 解决不了,得配上微分段或 ZTNA。

我的判断:50 分支以下的小团队,VyOS 自建方案性价比最高。50 分支以上,直接上商用方案或云上 SASE,运维效率更重要。不管选哪种方案,链路质量评估和策略优先级设计是两大关键点,跳过任何一个都会翻车。

延伸阅读