不改路由表实现智能选择线路,提升访问国内外网站速度

互联网发明以后,我们可以很容易的去访问世界各地的知识资源。但是受限于网络环境的原因,部分资源我们去访问的时候会很慢,或者访问不了,这时候我们可以通过跳板、隧道、虚拟私有网络等形式去进行访问。在使用虚拟私有网络的过程中,大部分软件会通过修改网关地址将所有数据都通过虚拟私有网络进行传递,然而我们很多时候访问某些特定资源,比如本地资源时并不希望数据通过虚拟私有网络,这怎么办呢?

池建强大哥在这篇博文《VPN – 长城内外,惟余莽莽》里提到了用路由表解决这个问题。可是改路由表这么麻烦的事情,想想都觉得不美。

博主之前一直用的是国外VPS+ssh tunnel方式“连接国外主机”,用proxy-switchysharp自动切换出口,非常方便。

现在博主的VPS搬到国内了,功能没有了,买了个虚拟私有网络。为了继续使用proxy-switchysharp,博主用go写了个简单的本地代理服务器,让请求通过指定的IP地址转发出去从而实现跨地区资源访问的目的,而因为虚拟私有网络关闭了“Send all traffic over VPN connection”,国内资源的访问依然快速。

目前项目托管在github,博主水平很差,欢迎各位改进
项目地址:https://github.com/HessianZ/daisy-proxy

可执行文件下载:
DaisyProxy For Mac
DaisyProxy For Windows 64

Read: 60

  1. daisy-proxy.exe -ip 192.168.100.14(VPN地址) 已开启监听,然后尝试设置浏览器代理服务器:127.0.0.1:8080; 但是所有网站都打不开。 在这个基础上,再尝试做一条到Google的路由,google打开了;但仅有google打开。按理说,开启了转发,就应该从VPN送出去,但是为何还要做路由

  2. -if 綁定接口這個怎麽用?
    另外説個問題,
    IPv4 Route Table
    ===========================================================================
    Active Routes:
    Network Destination Netmask Gateway Interface Metric
    0.0.0.0 0.0.0.0 192.168.16.1 192.168.16.102 50
    0.0.0.0 0.0.0.0 10.211.254.254 10.211.1.2 60

    使用命令daisy-proxy -ip 10.211.1.2 應該沒錯
    返回DaisyProxy listen on localhost:8080 outgoing from 10.211.1.2
    但是通過127.0.0.1:8080 HTTP代理爲什麽返回
    ConnectEx tcp: A socket operation was attempted to an unreachable network.