先学六个网络名词
第一次实验只需要 WAN、LAN、IP 地址、网关、DHCP 和 DNS。指南不假设你已有网络经验,会用简短方式说明。
WANLANDHCPDNS
先描述路由器,再决定何时变更网络。
routerd 将 WAN、LAN、DNS、NAT、路由和系统设置明确写入一份 YAML。请从实验主机开始,并保留控制台或独立管理网卡:live 运行可能改变连通性。
第一次实验只需要 WAN、LAN、IP 地址、网关、DHCP 和 DNS。指南不假设你已有网络经验,会用简短方式说明。
WANLANDHCPDNS使用备用 VM 或主机,并保留控制台或独立管理 NIC。不要在生产环境或唯一的路由器上进行第一次 live 变更。
Ubuntu Server控制台访问独立管理 NIC先从接口和单一 LAN 服务开始,再逐一加入 DHCP、DNS 和出站 IPv4 NAT。
InterfaceDHCPv4ServerNAT44Rule已有安装布局和服务管理集成的基础工作,但原生平台渲染器和功能对等性仍待完成。第一台路由器请使用 Ubuntu Server。
Ubuntu Server 为主FreeBSD 基础工作NixOS 基础工作请按这个顺序进行。验证和 dry-run 不会变更主机网络;在控制台运行的 live apply 和守护进程可能会。请使用控制台或独立管理路径,并且只在守护进程启动后使用 routerctl。
WAN / LAN / DHCP / DNS控制台 / 管理 NICrouter.yamlrouterd validaterouterd apply --once --dry-runrouterd apply --oncerouterd serve → routerctl请在备用的 Ubuntu Server VM 或主机上安装 routerd,将示例 YAML 放到下列路径;进行 live 步骤前,保留控制台或独立管理路径。
这会检查 YAML 和资源规则,不会变更主机网络,也不需要 routerd 守护进程正在运行。
sudo routerd validate --config /usr/local/etc/routerd/router.yaml这会使用临时的 state、ledger 和 status 路径执行一次应用流程,不应用网络变更,也不写入 routerd 的正常状态文件。它仍是独立操作,不需要守护进程或 routerctl。
LAB_DIR="$(mktemp -d)"
sudo routerd apply --config /usr/local/etc/routerd/router.yaml --once --dry-run --skip-service-manager --state-file "$LAB_DIR/state.db" --ledger-file "$LAB_DIR/ledger.db" --status-file "$LAB_DIR/status.json"这会变更主机网络后退出。只在实验环境的控制台,或有独立管理路径时运行。
# 一次 live 应用:变更主机网络后退出。
sudo routerd apply --config /usr/local/etc/routerd/router.yaml --oncerouterd serve 是 live 运行,会持续应用并协调主机网络。启动后才在另一个终端中使用 routerctl。
# 从控制台启动 live 守护进程。
sudo routerd serve --config /usr/local/etc/routerd/router.yaml
# routerd serve 启动后,在另一个终端中运行。
sudo routerctl get status
sudo routerctl get events --limit 20routerd 是 pre-release v1alpha1 软件。不要把第一次 live 运行用于网络中唯一的路由器或唯一的远程管理路径。
routerctl 会与本地正在运行的 routerd 守护进程通信。它用于检查已运行的路由器,不用于上面的独立验证和 dry-run。
在进行下一项变更前,检查守护进程报告的资源状态。
路由器启动后,通过守护进程执行有针对性的健康诊断。
资源未进入预期状态时,查看最近的控制器事件。
live 网络变更影响远程访问时,控制台或独立管理路径就是恢复途径。