SWE / SRE / Frontend · System Design / 基础

TikTok 网络设备接入节点:接口、地址、路由与隔离

解释物理/虚拟接口接入步骤,区分 attach、链路 up 与真正可达。

题目重点:解释物理/虚拟接口接入步骤,区分 attach、链路 up 与真正可达。

题意与假设

这道练习题保留了面经中值得训练的核心约束,并将需要澄清的条件单独列出。现场拿到变体时,先和面试官确认这些条件。

  • “attach”可指物理设备、虚拟接口、容器netns或VM;先问目标层次,不能默认一条命令适用。

解题路线

  1. 物理设备先确认驱动/内核识别和link状态;虚拟设备确认类型、namespace与所属bridge/网络。ip link show只告诉接口信息,不等于地址与路由正确。
  2. 配置地址/前缀、接口up、路由与DNS,核对VLAN/MTU和安全规则。接入bridge与移动netns改变所属/路径,需明确期望拓扑。
  3. 容器常用veth两端连接不同namespace;VM可能用tap+bridge。路由型、桥接型和NAT型行为不同。
  4. 用链路、邻居、路由、TCP/应用分层验证;更改生产接口可能切断控制连接,保留可回退配置。

手动走一遍

容器veth已up但没有默认路由,仍不能访问外部;bridge接口存在也不保证目标端口加入正确bridge。IPv6链路本地可达不代表跨网段global地址路由正常。

规模与取舍

接口/namespace和规则数量影响管理成本;转发吞吐受CPU、MTU、NIC队列与策略,需实测。

易错点与追问

容易失分的边界

  • up等于全链路可达。
  • attach默认就是Kubernetes特定命令。
  • 改接口前不保留控制路径。

继续深挖

  • bridge与路由隔离有什么差异?
  • 怎样排查namespace中邻居发现失败?

技术参考

✓已复制微信号!