![排除本地子网(本地 IP 范围)](https://linux22.com/image/793438/%E6%8E%92%E9%99%A4%E6%9C%AC%E5%9C%B0%E5%AD%90%E7%BD%91%EF%BC%88%E6%9C%AC%E5%9C%B0%20IP%20%E8%8C%83%E5%9B%B4%EF%BC%89.png)
在我公司的 VPN 应用中,我们有一个可禁用的功能,不包括以下内容列表非网站 IP 地址范围被路由到 VPN 服务器。
这样,即使 VPN 处于活动状态,本地网络应用程序也可以继续工作,此外,一些反VPN检查这些地址(查看 VPN 是否处于活动状态)。
我的问题是,我们是否应该在列表中添加和/或删除任何 IP 范围?
此外,提及相关的 RFC 会有所帮助,但不是必须的。
警告:在列表中添加太多内容意味着泄露网站数据包,而删除太多内容则意味着本地网络应用程序可能无法运行。
列表:
传奇:
- 例如,
{172,16,0,0 , 12},
条目的意思是172.16.0.0/12
。 - 其中,前 4 个字段
MyType
指定 IP 地址的基数。 - 第 5 个字段指定“掩码”。
条目:
MyType localSubnets[] = {
// Address ranges below are reserved by IANA for private intranets,
// and not routable to the Internet
// (For additional information, see RFC 1918).
{10,0,0,0 , 8}, {10,170,60,224 , 27},
{172,16,0,0 , 12},
{192,168,0,0 , 16},
// Reserved and special use addresses:
{0,0,0,0 , 8}, // Current network (only valid as source address) RFC 1700
{127,0,0,0 , 8}, // Loopback IP addresses (refers to self) RFC 5735
{192,0,0,0 , 24}, // Reserved (IANA) RFC 5735
{192,88,99,0 , 24}, // IPv6 to IPv4 relay. RFC 3068
{198,18,0,0 , 15}, // Network benchmark tests. RFC 2544
{198,51,100,0 , 24}, // TEST-NET-2. RFC 5737
{203,0,113,0 , 24}, // TEST-NET-3. RFC 5737
{224,0,0,0 , 4}, // Reserved for multicast addresses. RFC 3171
// Reserved (former Class E network) RFC 1700
{255,255,255,255 , 32} // Broadcast address (limited to all other nodes on the LAN) RFC 919
};
答案1
您可以考虑添加:
- 169.254.0.0/16- RFC 3927 - 为本地链路地址设计的地址块。当 DHCP 服务器不可用时,这些地址会自动分配给本地网络上的设备。它们的范围有限,无法在本地网络段之外路由
- 240.0.0.0/4- 此块保留用于未来用途,不应用于任何当前应用程序(IANA IP 地址空间注册表)
- 64.44.0.0/16- RFC 6459 - 用于运营商级 NAT 的私人用途。此块允许服务提供商在大型 NAT 设备后面为其客户创建私有地址空间。
- 100.64.0.0/10- RFC 6598 - 指定用于运营商级 NAT 的共享地址空间。这允许多个服务提供商在 NAT 设备后面为其客户共享一个地址池。
- 233.252.0.0/14- RFC 791 - 本地范围多播。它允许在本地网络段内进行高效通信,而无需为每个设备进行单独路由
- 239.255.0.0/16- RFC 3171 - 此地址块指定用于有限范围的多播地址。这些地址用于特定目的,例如本地网络内的服务发现。
答案2
我认为 OP 应该169.254.203.0/24
在上述列表中添加一些内容,例如:
{169,254,203,0 , 24}, // Link-local address.
笔记我是 OP'er,但还不确定是否将其添加到列表中。