【发布时间】:2019-11-29 09:49:26
【问题描述】:
我们公司的笔记本电脑安装了与服务器通信的 WCF 同步/客户端。 只要他们不连接 VPN,数据传输就可以工作。
当他们与 VPN 连接时,如果我将“代理地址”参数添加到 .config 文件,我可以让 WCF 客户端再次同步。
问题:我怎样才能让它在这两种情况下都起作用? WCF 客户端有没有办法“智能选择”多个端点?
【问题讨论】:
我们公司的笔记本电脑安装了与服务器通信的 WCF 同步/客户端。 只要他们不连接 VPN,数据传输就可以工作。
当他们与 VPN 连接时,如果我将“代理地址”参数添加到 .config 文件,我可以让 WCF 客户端再次同步。
问题:我怎样才能让它在这两种情况下都起作用? WCF 客户端有没有办法“智能选择”多个端点?
【问题讨论】:
这个问题更多地与网络、路由有关,而不是 WCF。
当我们连接到VPN 时,会在本地机器上创建一个额外的虚拟网络接口。同时更改了本地路由表,导致无法访问内网地址的问题。我们可以通过设置代理地址来解决这个问题。更通用的方法是在本地机器上设置静态路由。
路由添加 -p 172.17.10.0 掩码 255.255.255.0 172.17.16.1
第一个地址是目标网络地址。最后一个地址是本地网关,可以通过本地网络接口路由。这将导致从指定的网络接口对发送到目标网络的数据包进行寻址。
这是一个相关链接。
https://docs.oracle.com/cd/E53394_01/html/E54745/gmyag.html
如果有什么可以帮助的,请随时告诉我。
【讨论】: