我有个关于IP转发的大问题。目前的情况如下:
我想把一个包从客户端发送到服务器,在它们之间我有两个路由器,Router1和路由器2,其中Router1是最接近客户机的路由器,Router2是最接近服务器的路由器。客户的ip地址是: 111.222.111.222
服务器的ip地址是: 222.222.111.111
路由器1's接口:
Interface 1: 111.222.111.1
Interface 2: 111.222.122.1
Interface 3: 111.222.133.1
Interface 4: 111.222.144.1 路由器1's路由表:
222.222.0.0/16 over interface 2
222.222.192.0/18 over interface 3
222.222.0.0/18 over interface 4路由器2's接口:
Interface 1: 222.222.111.1
Interface 2: 222.222.122.1
Interface 3: 222.222.133.1路由器2's路由表:
111.222.0.0 / 16 over interface 1
111.222.192.0/18 over interface 2
222.222.111.0/24 over interface 3通过这些信息,我将客户机连接到router1接口#1,因为111.222.111.1与客户机的ip最相似,我对router2 interface#1也是如此,因为222.222.111.1与服务器的ip最相似,对吗?
但现在说到棘手的部分。我该如何连接路由器?如果我查看router1路由表,惟一可以存在(222.222.111.1、222.222.122.1或222.222.133.1)的地方是接口2。但是我如何知道我应该连接到router2中的哪个接口?我一整天都在试图解决这个问题,但没有取得任何进展。我真的很感激在这方面的任何帮助,所以我真的可以学习IP转发和路由器路由表。
发布于 2015-08-14 01:20:49
您的解释遗漏了一个重要的信息:用于路由器(和主机)接口的子网掩码。
但要回答你的问题,如果我假设24位面具:
首先,路由器需要有一个共同的子网。这意味着将它们连接在一起的两个接口将在同一个IP子网中配置IP地址。因此,您需要更改至少一个接口上的IP地址。
其次,您需要路由器1上的一条路由,将发送到服务器的通信量转发到其公共子网上的路由器2's地址,以及路由器2上的补码。
您的路由表缺少一个“下一跳地址”,用于R1的地址是普通子网上的R2地址,而R1's地址是R2地址。
例如,将每个路由器的接口2连接在一起,并将这些接口上的IP地址更改为R1的50.50.1/24和R2的50.50.0.2/24。
接下来,您需要下列路线:
R1: 222.222.111.0/24 -> 50.50.50.2
R2: 111.222.111.0/24 -> 50.50.50.1
发布于 2015-08-14 00:58:06
短故事是,他们需要共享一个子网之间的路由器,以便他们可以交谈。如果一个路由器上的IP和另一个路由器上完全不同的IP没有共享网络将它们结合在一起,那么您就不能仅仅配置一组IP。
例:
3.3.3.0/24 R1 -> 1.1.1.1/24 <- (1.1.1.0/24共享网络)->1.1.2/24 R2 4.4.4.0/24
在这种情况下,3.3.3.x将通过R1's访问1.1.1.2与4.4.x联系。
干杯,
https://networkengineering.stackexchange.com/questions/20608
复制相似问题