1646 是什么
1646/udp 是 RADIUS 计费功能的历史端口,对应的标准版本是 1813。RADIUS 把认证与计费分成两套交互:认证用 1812,计费用 1813,计费报文记录会话的开始、更新与结束,是上网行为审计与流量计费的基础。1646 属于标准化之前的分配,现网新部署应统一使用 1813。
基本信息
| 服务 | RADIUS Accounting(历史端口) |
|---|---|
| 端口 | 1646(UDP) |
| 标准端口 | 1813(认证为 1812) |
| 规范 | RFC 2866(RADIUS Accounting) |
| 用途 | 会话计费、上网行为审计 |
典型使用场景
- 接入认证排障:认证成功但无计费记录时确认计费通道
- 上网行为审计:为审计系统提供会话级记录
- 计费对账:核对会话时长与流量的统计口径
- 安全核查:确认 RADIUS 通信使用共享密钥且来源受限
- 遗留系统整改:把历史端口统一到标准端口
排查命令
排查命令
ss -lunp | grep -E ':(1646|1813) ' # 计费端口监听情况
ss -lunp | grep ':1812 ' # 认证端口对照
sudo tcpdump -ni any 'udp port 1813 or udp port 1646' -c 20 # 抓包确认计费报文
# 设备侧核对(以 VRP 为例):display radius-server configuration
journalctl -u radiusd -n 20 2>/dev/null # 服务端日志RADIUS 端口对照
| 端口 | 功能 | 说明 |
|---|---|---|
| 1812 | 认证 | Access-Request/Challenge 等交互 |
| 1813 | 计费 | 会话开始、更新与结束记录 |
| 1646 | 计费(历史) | 标准化前的分配,逐步淘汰 |
| 1645 | 认证(历史) | 与 1646 同期的历史分配 |
端口不一致会导致「认证成功但审计缺失」这类隐蔽问题:用户能正常上网,记录却丢失,事后追溯时才发现计费通道从未打通。排查接入问题时把认证与计费两条通道分别验证,可以快速区分。
RADIUS 使用共享密钥保护报文,密钥强度与来源限制缺一不可:密钥薄弱时攻击者可伪造或篡改报文;来源不限制时任意主机都能尝试交互。做安全基线时这两项应固定检查。
计费数据的价值在于可追溯:会话记录能对应到账号、时间与来源地址。审计要求高的环境还要确认记录留存周期与备份机制,避免出现「查得到账号但查不到时间窗」的情况。