Closed fbion closed 4 years ago
我上游的分流是交给clash客户端的,这样通过GUI来控制clash然后间接控制网关分流规则这样。因为目前除mac平台我没有找到很好的像Surge这样完整的代理工具,就把这个方案作为备用了。
https://github.com/Dreamacro/clash/releases/tag/TUN clash也出tun了 试了下 不好用
还是你这个好用,手机设置网关为电脑ip,dns为tun2socks fake dns 域名识别交给v2ray 这样就解决了很多
不过还有连接ip的情况,需要 pass out log on en0 route-to utun1 inet proto {udp,tcp} from 192.168.0.55 to any port {53, 80, 44 3} 这样就把手机访问ip的流量转给utun1 然后tun2socks转给v2ray 还是v2ray检测ip来分流
clash一会看看,不过我现在完整用v2ray也没啥问题?
我自建用了半年多挺稳的没啥问题。
不过还有连接ip的情况,需要 pass out log on en0 route-to utun1 inet proto {udp,tcp} from 192.168.0.55 to any port {53, 80, 44 3} 这样就把手机访问ip的流量转给utun1 然后tun2socks转给v2ray 还是v2ray检测ip来分流
这个你是指SRC-IP规则?确实SRC-IP之类的规则会不对,毕竟tun2socks和upstream proxy是分离的,从路由这一层解决应该比较复杂,如果是一体的就可以带一个metadata来表明source-addr。
clash一会看看,不过我现在完整用v2ray也没啥问题?
v2ray没问题,我以前也用,后来换成clash是因为规则管理更简单强大,而且还有ProxyGroup方便选择自动切换节点。
叫道理感觉tun的全局代理实现还是不太好,不如netfilter之类的模块,tun必须要安装不能即开即用,而且不能直接得到具体是哪个process的流量,只能通过别的工具来判断,容易影响效率。像Surge这样的实现其实是最完美的。。但是需要特定的平台。。
surge总是连接e.crashlytics.com挺烦的 获取是哪个process的流量 好像有软件是通过lsof查询端口获取相应的进程名字 比如127.0.0.1:789 -> 127.0.0.1:1080(socks5 server) 通过789端口可以lsof到进程名字
/Users/apple/Library/Caches/com.crashlytics.data/com.nssurge.surge-dashboard /Users/apple/Library/Caches/com.crashlytics.data/com.nssurge.surge-mac 感觉surge收集的信息太多了
surge总是连接e.crashlytics.com挺烦的 获取是哪个process的流量 好像有软件是通过lsof查询端口获取相应的进程名字 比如127.0.0.1:789 -> 127.0.0.1:1080(socks5 server) 通过789端口可以lsof到进程名字
/Users/apple/Library/Caches/com.crashlytics.data/com.nssurge.surge-dashboard /Users/apple/Library/Caches/com.crashlytics.data/com.nssurge.surge-mac 感觉surge收集的信息太多了
app收集crashlytics data无可厚非吧,对app的bug fixes一些改进都有用的,而且这个开销几乎可以忽略不计了。
surge作为收费软件很不错了 不过我用proxifier.com
proxifier我也用,但他似乎不能做网关。。
tun2socks还是有用的, 可以让udp走socks5
可以的 https://github.com/FlowerWrong/tun2socks https://github.com/xjasonlyu/tun2socks 这两个已经实现fake dns surge增强模式也是这样 有两种方式 google.com -> 192.18.0.1 google.com.hk -> 192.18.0.2
google.com -> 192.18.0.1:1111 google.com.hk -> 192.18.0.2:1112
通过这种关联即可
个人系统192.168.1.2开启 net.inet.ip.forwarding=1 开启tun2socks sudo route add 198.18.0.2/24 240.0.0.1(tun网关)
手机设置网关192.168.1.2 所有流量走192.168.1.2了吧 192.168.1.2开启fake dns 手机dns服务器也设置为1.2 手机访问google.com 得到ip 192.18.0.1 手机连接192.18.0.1经过192.168.1.2 192.18.0.1走tun接口 tun2socks检测到访问192.18.0.1->google.com
此时tun2socks->v2ray inbounds 由v2ray来识别国外国内 google facebook twitter等域名
假如手机访问baidu,v2ray直接识别为geosite:cn ip 流量直接国内走
tun2socks只需要提供fake dns和代理功能 分流交给v2ray来做 这样