NAT / DHCP Relay / Time-DNS Services¶
この章は、SONiC が「edge / management 側で動く付帯サービス」と呼べる機能群、つまり NAT、DHCP relay と DHCP server、NTP / chrony / DNS、そして TWAMP Light や terminal server のような測定・補助サービスをまとめて読むための入口です。これらは BGP や ACL のように data plane の主役ではありませんが、ToR / management スイッチを「使える装置」にするための薄い層であり、container と daemon の境界、management VRF との関係を把握しないと運用で迷います。
NAT は data plane に踏み込むがフローテーブル管理が中心、DHCP relay は L2/L3 broadcast を upstream へ橋渡しする agent、DHCP server は kea を内蔵してポート単位で leases を払い出す機能、time / DNS は OS レイヤ寄りの設定で management VRF 越しに通信する、というように責務がはっきり分かれます。章内のページでは、まずこれらを「どの container / daemon が処理するか」で並べ直します。
この章で答える質問¶
- NAT、DHCPv4 relay、DHCPv6 relay、DHCP server は SONiC のどの container / daemon が処理するか。
- DHCPv4 / DHCPv6、per-interface counter、Option 82 / Option 79 はどう設定・監視するか。
- NTP / chrony / static DNS は management VRF とどう関係するか。
- DHCP DoS 緩和、giaddr 固定のような派生機能はどの層に乗っているか。
- TWAMP Light や terminal server はサービス系としてどこに置くか。
読み進め方¶
- 概念: edge service の範囲と、NAT / DHCP relay / DHCP server / time-DNS の責務分担。
- アーキテクチャ:
docker-nat、docker-dhcp-relay、docker-dhcp-server、kea、chrony と packet flow。 - 設定: NAT、DHCP relay、DHCP server の CONFIG_DB / CLI / YANG リファレンス。
- 運用: counter、DoS 緩和、service health の確認順序。
- 発展トピック: NTP / chrony 移行、static DNS、TWAMP Light、terminal server udev。
- 内部実装: natsyncd / natorch / dhcp_relayd / kea-dhcp / chrony の責務分担と CONFIG_DB / APPL_DB / SAI への変換を実装側から見る。
関連ページ¶
章構成と進捗¶
| ページ | 状態 | verification |
|---|---|---|
| concept | ✅ 完成 (187 行) | meta |
| setup | ✅ 完成 (225 行) | meta |
| operations | ✅ 完成 (215 行) | meta |
| internals | ✅ 完成 (127 行) | meta |
| advanced | ✅ 完成 (120 行) | meta |
次に読むべき記事¶
この章を読み進める順
関連する HLD 7 件
- SWSS docker warm restart(state restore / consistency / sync up)
- BUM ストームコントロール(PORT_STORM_CONTROL)
- Smart Switch DPU IP アドレス割当(midplane bridge / DHCP server)
- SONiC Boot Chart(systemd-bootchart 統合)
- SONiC NTP client(chrony / NTP_SERVER / mgmt VRF)
- VLAN インタフェースの OpenConfig YANG 対応(REST / gNMI)
- ICCPd 内部構成(MC-LAG / MLACP FSM ファイル別マップ)
関連トラブルシュート 5 件
- DHCP Relay で IP が払い出されない
- PINS gRPC (P4Runtime) が応答しない
- APP_DB → ASIC_DB の反映が遅延・停止する
- CONFIG_DB の永続化が失敗する
- orchagent が CPU 100% で詰まる
関連する章¶
前提として読むべき章
派生で読むべき章
補完的に読む章