什么是网络命名空间?
在Linux系统中,网络命名空间(Network Namespace)是一种内核特性,允许我们有多个独立的网络实例存在于同一个物理系统上。这相当于在单一操作系统中复制了多个网络栈,实现了网络隔离。每个网络命名空间都拥有自己的网络资源,例如IP地址、路由规则和端口号集合。应用程序可以被绑定到特定的网络命名空间中运行,从而被限制仅在该空间内的网络环境中通信。
本文内容主要来自ChatGPT。
Linux虚拟网络设备有多种类型,它们在不同场景下被用于创建和管理虚拟网络连接。以下是一些常见的Linux虚拟网络设备:
VXLAN(Virtual Extensible LAN)和GRE(Generic Routing Encapsulation)并非严格意义上的网络设备,而是网络隧道协议。然而,在Linux系统中,它们可以被视为一种特殊类型的虚拟网络设备,因为它们可以创建和管理虚拟网络连接。
本文中,我们主要学习tun/tap和veth pair。
参考文档:
Wireshark: The world’s most popular network protocol analyzer.
Wireshark最初是一个名为Ethereal的项目,在2006年更名为Wireshark。Wireshark是一个免费且开源的网络协议分析工具,可以用于捕获和分析网络数据包。它支持超过2,000种协议,并且可以深入分析每个协议的细节。
参考文档: