服务器A和B具有与anycast相同的IP地址。服务器B连接到离服务器A非常近并且离服务器B很远的原始服务器,因为服务器A更近,响应将被路由回服务器A,难道不可能总是将这种类型的请求路由回服务器B,因为服务器B启动了到源服务器的连接吗?
这个问题的答案是:
https://networkengineering.stackexchange.com/a/33827/54705
您不会启动从anycast地址到Internet上任何旧地址的连接。任意广播地址都是目标地址。如果具有anycast地址的主机需要在Internet上与不同的主机联系,则它使用非选播地址,或者使用接口上的辅助地址,或者更有可能使用不同的接口。
我想问的是,是否有TCP以外的协议可以发送一些标记或静态路由本身,以便源服务器知道返回哪个路由,回答anycast地址?
你总是要用不同的IP地址发送?
发布于 2020-01-03 15:22:42
数据包由目标IP地址单独路由,而不考虑以前出现的任何数据包。路由器不维护状态(IP是专门设计成无状态的),路由器根据目标地址路由数据包,不知道它是响应于另一种方式的数据包。
TCP和其他传输协议在数据包路由中不起任何作用。传输协议是IP数据包的有效负载,但是路由器只查看IP数据包报头来路由数据包。路由器不会在网络堆栈中提升到传输协议。这将降低路由速度,并且需要大量软件来理解各种传输协议,并更新新的传输协议。IP既不知道也不关心它在其有效载荷中携带的是什么。
发布于 2020-01-03 16:07:58
服务器B连接到与服务器A非常接近并远离服务器B的原始服务器,因为服务器A更近,响应将被路由回服务器A。
它不是这样工作的。
Anycast用于缩短到全局服务的路由:在多个位置终止相同的IP地址,并在BGP上进行广告。现在,访问该IP的全球客户端将通过最短的路由路由--到他们最近的位置。这样,anycast只对启动到anycast服务的连接起作用。
最有可能的是,终止anycast IP的服务器为其出站连接(数据交换、管理等)使用正常的单播IP地址。
https://networkengineering.stackexchange.com/questions/64345
复制相似问题