深入浅出【迷雾通】之第一篇

使用CN2/CN2GIA顶级线路,支持Shadowsocks/V2ray科学上网,支持支付宝付款,每月仅需 5 美元
## 加入品葱精选 Telegram Channel ##

本文章由 @为啥改名还要葱 冠名赞助!

他赞助了本文1600葱!

正文开始:https://pincong.rocks/article/10365

速度很快、特别难封:迷雾通的翻墙协议niaucchi4是我自己根据ScrambleSuit等在学术界认可的协议写的,基于UDP并在保证性能的前提下有高强度的混淆和加密。niaucchi4即使通过机械学习也难以辨别(初步用各种机械学习算法做过实测)。迷雾通运营两年多了,官网也早被封了(说明不是没有被盯上),但协议从未被封。根据两年内几千个用户的反馈,迷雾通稳定性和速度都非常好,包括在十一等敏感期间。

我们不是来找茬,只是一起审视代码!

niaucchi4协议,我没有细读,但是大概看过来是跑在KCP协议上,KCP底层用的UDP。

因为KCP的协议有24字节的报文头,所以GFW可以很容易识别出KCP协议,并封杀。

我给作者讲一些事情,v2ray也曾经有人用过KCP和mKCP,都失败了。。。所以KCP这条路是走不通的。。。但是我相信niaucchi4协议仍然是很出色的~有空我去读读!

可能作者也发现KCP这条路走不通,所以改了下面的代码

func dialBridge(host string, cookie \[\]byte) (net.Conn, error) {  
	// return niaucchi4.DialKCP(host, cookie)  
	conn, err := net.DialTimeout("tcp", host, time.Second\*5)  
	if err != nil {  
		return nil, err  
	}  
	conn.(\*net.TCPConn).SetKeepAlive(false)  
	return cshirt2.Client(cookie, conn)  
}

把 

niaucchi4.DialKCP(host, cookie)

给注释掉了,改成了tcp连接。。。

第一部分总结:因为用了KCP协议,通过牺牲带宽来提升网速30%,所以很快。但是KCP的特征太明显,所以直接被识别,无条件封杀了。。。

「傻瓜式」软件前所未有的私密性:基本上任何付费梯子都有一个问题,就是注册和支付很容易暴露自己的隐私。即使你用假电话注册,用门罗币付款,如果服务商是黑心的(或者被共匪控制),在同一个用户名下的活动时间久了也很可能足够推断出谁是谁。自己搭梯子也很难避免这个问题(VPS提供商同样有可能有问题)。与其相反,迷雾通使用一个基于blind signature的加密学概念来进行用户验证。简而言之,就是用户可以向翻墙代理证明自己是注册过并付费过的用户,而不透露自己是哪一个用户。这样,注册支付这种「敏感」信息就和浏览活动从数学上隔离了,尽管用户体验上和付费VPN基本一样,实际隐私可以和自由门之类的不记名软件媲美。(当然要完全私密的话强烈建议开双重代理+Tor)

这里是作者亲自告诉我代码在哪里,省了我很多时间,谢谢作者!

https://github.com/geph-official/next.geph.io/blob/master/src/billing/PlanPicker.jsx

https://github.com/geph-official/next.geph.io/blob/master/racket/billing.rkt

先看PlanPicker,划重点,通过Stripe付费的!所以我们代码里搜索stripe

const STRIPEKEY = “pk_live_Wk781YzANKGuLBl2NzFkRu5n00YdYjObFY”;

作者stripe账号的公钥,类似TLS里的serverhello,证明你付费对象的身份

然后我们选择付费plan,付款成功以后会调用webhook函数,返回

customerEmail: 你的迷雾通用户名@receipts.geph.io

接下来看/racket/billing.rkt,我不懂lisp,不好意思!!!

我们来搜关键字吧!

首先,我们搜索webhook,看看webhook函数在干嘛。

这里,我看到了Erlang语言的模式匹配,现在看checkout.session.completed这个case

register-subscription // 这里说下 前缀中缀后缀表达式(逆波兰表达式)  发现很多程序员数据结构没学。。。光学设计模式了?

如果习惯了前缀表达式,估计代码就看懂了。。。我们就不细讲了。。。

接下来,我们搜索第二个关键字,query-,记住带减号!

看不懂lisp,但是可以看懂sql,看着sql,把大概搞懂了~

subscriptions,stripeSubs,users,invoices 这几张表是干嘛的,了解下就可以了。

第二部分总结:作者把银行卡信息和用户账号隔离,没法通过迷雾通账号,知道对应的银行卡号。

第三部分总结:因为第一部分的结论,kcp协议走不通,作者使用了tcp协议,所以客户端和网桥的交互代码就基本废了重写。。。

现在回过来说下geph-binder,就是一个 端口号9080的http服务器。。。甚至不是https?

客户端,通过TLS连接到CDN,因为用了前置域名,所以GFW无法区分内容是什么。

CDN转发请求给binder,我们只要看 cmd\geph-binder\main.go里的路由就好了

重点关注add-bridge,get-bridges, 【warpfronts 新加的,我还没看】

读到这里的时候,我挺好奇的,如果GFW,给binder发了add-bridge,然后用户调用了

get-bridges得到了GFW的钓鱼网桥,不就玩大了么?

然后,我发现有鉴权。所以鉴权部分,我去研究下。。。还没看第二篇给你们补上

继续,我们说下get-bridges,客户端代码,调用 getBridges 函数的时候,会发送get-bridges请求给binder

这个时候,binder返回自己存储的4个bridges~

客户端,得到应答以后,就通过调用 dialBridge 去连接网桥【tcp协议,kcp协议已经废掉了】

第四部分总结:网桥代码在境外VPS部署,启动以后,通过给binder发送add bridges请求,把自己的信息发给binder,binder鉴权以后,存储到cache。以后客户端可以通过CDN访问binder得到网桥信息。

最后客户端通过tcp协议连接到网桥~

品葱用户 北美carl 评论于 2020-04-21

好厉害 完全看不懂

本文章由 @为啥改名还要葱 冠名赞助!

他赞助了本文1600葱!

这是怎么赞助的……

品葱用户 做个快乐读书人 评论于 2020-04-21

好。。。好深!

品葱用户 乔治奥威尔 评论于 2020-04-21

跪着点赞,好厉害

品葱用户 董堂主 评论于 2020-04-22

感谢提供解读!!!

建议 把主要结论分点归纳在文章前面,
比如,安全不?这个应该是大家最关心的。
不然对于非专业或者没有相关知识储备的人 看了 是 一头雾水。

品葱用户 霏艺Faye 评论于 2020-04-22

第五部分:也是今天最后的内容了。。。
因为我们只关心翻墙!所以我们的重点,是客户端如何到达网桥
现在开始讲解:
1. 客户端调用 dialBridge,得到一个tcp连接,再调用cshirt2.Client(cookie, conn)
2.cshirt2 库 调用 dhGenKey() 生成密钥对,明文发送自己的公钥给服务端
3.服务端 明文发送网桥的公钥,调用 udhSecret函数,得到 chacha的密钥
4.返回 transport ,作为入参调用 connThroughBridge
5.向网桥发送 cmd【conn/feedback】和 exitName【us-sfo-01.exits.geph.io】
6.读取网桥的应答,收到表示没问题,将这个transport放到sessionMap里

=========================================
现在将socks5代理部分:
1.客户端收到 socks5请求以后 调用 remote, ok = sWrap.DialCmd(“proxy”, rmAddr)
2.从刚才的sessionMap拿出一个连接,发送 cmd【proxy 地址】,成功以后就是一次link了~
3.网桥这个tcp连接已经和exit节点做了link,所以直接转发给了exit节点
4.查看出口节点代码 cmd\geph-exit\handle.go ,搜索

case "proxy":

然后自己读就好了,我觉得不难。。。
没有任何算法部分,单纯就是根据域名解析ip,然后判断是不是在黑名单,没问题就去直连,建立link

我觉得,exit节点没有任何我感兴趣的部分。。。没怎么读。。。

我在品葱的大总结~
ShadowSocks 就是 socks5 over AES
迷雾通 就是 socks5 over Chacha20
v2ray 网上主流 方式  vmess over WSS【websocket over TLS】
沉默的广场提供的v2ray方式  socks5 over WSS【websocket over TLS】
Tor的meek网桥 就是 socks5 over https【http over TLS】
lantern    这个是lampshade协议,纯私有 ,但是代码完全开源???

另外大家都用到CDN,除了v2ray用了CDN的反向代理
还提供了很多静态资源下载方式
这里列举下lantern的地址
        http://config.getiantem.org/proxies.yaml.gz
        http://d2wi0vwulmtn99.cloudfront.net/proxies.yaml.gz
        http://config-staging.getiantem.org/proxies.yaml.gz
        http://d33pfmbpauhmvd.cloudfront.net/proxies.yaml.gz

这里列举下tor的meek
https://meek.azureedge.net/

这里列举下迷雾通的
http://1680337695.rsc.cdn77.org
http://loving-bell-981479.netlify.com
http://gephbinder-vzn.azureedge.net

最后,再次感谢 @为啥改名还要葱 赠送的1600 葱!!!
希望更多人给我送葱~
我会写感谢列表,每个人都可以得到感谢~

品葱用户 霏艺Faye 评论于 2020-04-22

对于有兴趣学习翻墙的人,可以从这篇文章开始学起【墙内链接,慎点!!!】
[https://www.villianhr.com/2016/10/26/TLS & SSL 快速进阶]( “https://villainhr.com/page/2016/10/26/TLS & SSL 快速进阶”)

这篇文章,基本把TLS讲的非常清楚了!

迷雾通的cshirt2,就是精简版实现了TLS,包括ECDHE交换密钥,chacha20加密等等

====================我是分割线=======================
另外我这样一篇文章,某人你点踩的理由,能不能告诉我呢。。。

品葱用户 李舜生 评论于 2020-04-21

我想问下,现在用这个翻墙是否还需要注册账号?

品葱用户 Resistance 评论于 2020-04-21

楼主把代码解析得很透彻,却自称不会编程,俺是不信滴。~至少俺看不懂这段代码,因为没学过这门编程语言。~
科技版块现在很缺优秀帖子,希望大伙儿都踊跃发帖,丰富这个版块。

品葱用户 workingpaper 评论于 2020-04-21

不清楚鉴权部分如何做的(说实话,我没看过代码,瞄过一眼看不懂——从未学过 Go 语言),但不使用 https 会是隐患,毕竟 GFW 不需要知道用户的通讯内容是什么,只需要知道用户翻墙的可能性有多大就足够,再配合流量行为分析就可以采取措施(重置连接甚至封杀IP)。

这一点,只需要使用中间人攻击法就可以达到目的,劫持通信后就算有鉴权,由于通讯内容是未加密的 http,GFW完全可以看清楚鉴权认证的数据包 header(除非 header 没有特征,这一点还得代码),一旦发现是可疑数据包就立即重置连接,翻墙失败。

对了,其实那个技术不是内网穿透,内网穿透是用来帮助两个纯内网做互联的。如果用户侧多层内网,但 VPS 是公网的话,UDP 也能直连,不用内网穿透,普通 NAT 就可以了。作者增加网桥有几个好处:

  1. 墙屏蔽出口节点 IP 无法阻止翻墙者,因为用户(翻墙者)并非直连节点。
  2. 中转网桥可以建许多个,例如使用对中国网络网速友好的VPS提供接入服务,但出口位置可以设在美国(比如香港建立中转服务,转发到美国——这只是举例,不一定是迷雾通实际地理用法),这样用户就可以获得更好的网络体验。
  3. 由于不影响出口节点,因此每当更替中间节点时(例如某一个节点的 VPS 提供商涨价要换,或某节点在某些省市开始被墙)也不会造成大量已连用户断线。

————
说完迷雾通说一点我自己平时的翻墙。
我个人仍然更倾向于使用 VPN,而不是各种各样的 scoks 代理,因为 VPN 会用到虚拟网卡,这样我就可以随意使用 ICMP Ping / traceroute 等工具了

品葱用户 **Resistance

霏艺Faye** 评论于 2020-04-21

[

第五部分:也是今天最后的内容了。。。因为我们翻墙!所以我们的重点,是客户端!现在开始讲解:1. 客户…

](https://pincong.rocks/article/item_id-354379#https://pincong.rocks/article/item_id-354379#")
除了点赞,怎样送葱给你捏?是不是只有管理员可以操作?

品葱用户 admin 评论于 2020-04-22

@nullchinchilla

品葱用户 **霏艺Faye

admin** 评论于 2020-04-21

[

@nullchinchilla 

](https://pincong.rocks/article/item_id-354416#https://pincong.rocks/article/item_id-354416#")
我很好奇,如何给人送葱。。。

品葱用户 **霏艺Faye

Resistance** 评论于 2020-04-21

[

楼主把代码解析得很透彻,却自称不会编程,俺是不信滴。科技版块现在很缺优秀帖子,希望大伙儿都踊跃发帖,…

](https://pincong.rocks/article/item_id-354409#https://pincong.rocks/article/item_id-354409#")
我的确不会编程。。。

我是文科生,图书管理员而已。。。
2049,我的本职是发歌
品葱,我的本职是广播主持

品葱用户 **Resistance

霏艺Faye** 评论于 2020-04-22

[

我的确不会编程。。。我是文科生,图书管理员而已。。。2049,我的本职是发歌品葱,我的本职是广播主持…

](https://pincong.rocks/article/item_id-354440#https://pincong.rocks/article/item_id-354440#")
现在的大佬都是非常谦虚滴!

品葱用户 上善若水HK 评论于 2020-04-21

作為IT盲表示蒙古
但請問是否在說現時已被封殺掉不能用?

品葱用户 **Resistance

上善若水HK** 评论于 2020-04-22

[

作為IT盲表示蒙古但請問是否在說現時已被封殺掉不能用?

](https://pincong.rocks/article/item_id-354444#https://pincong.rocks/article/item_id-354444#")
要是封杀掉,便不会有这个帖子。

品葱用户 **油庫氣小馬

霏艺Faye** 评论于 2020-04-21

[

我的确不会编程。。。我是文科生,图书管理员而已。。。2049,我的本职是发歌品葱,我的本职是广播主持…

](https://pincong.rocks/article/item_id-354440#https://pincong.rocks/article/item_id-354440#")
不要迫害文科生😰

品葱用户 nullchinchilla 评论于 2020-04-21

我是作者,来澄清几点

  • 一开始用KCP,后来不用,其实不是因为被封杀。如果仔细读niaucchi4的代码,会发现其实KCP底下我还写了一个obfssocket的协议,所以KCP的特征是得以相当好的混淆的。弃用KCP改用TCP有两大原因:1. 维护成本很高,因为KCP自己的拥赛控制很垃圾,我被迫自己维护一套改动很大的KCP(实测比mKCP好很多)2. 很多ISP在last mile直接限速UDP,线路再好,KCP再暴力也没用。我希望近期写一个更好的UDP/TCP混合模式,可以在有没有UDP限速的情况下都达到理论最高速度。
  • KCP弃用之后其实e2enat.go完全没用了。

品葱用户 **nullchinchilla

霏艺Faye** 评论于 2020-04-21

[

对于有兴趣的人,可以从这篇文章开始学起【墙内链接,慎点!!!】这篇文章,基本把TLS讲的非常清楚了!…

](https://pincong.rocks/article/item_id-354390#https://pincong.rocks/article/item_id-354390#")
另外需要澄清一下,cshirt2是〖混淆协议〗,类似obfs4,而用户到出口的类似TLS的加密协议是tinyss(与shadowsocks无关,是tiny secure sockets的缩写)。

实际操作上是〖洋葱加密〗:用户先用cshirt2连接到入口,再在这个基础上套一个连接到出口的tinyss协议。所以最终是 SOCKS over tinyss over cshirt2,比shadowsocks复杂不少

品葱用户 **Resistance

nullchinchilla** 评论于 2020-04-21

[

另外需要澄清一下,cshirt2是〖混淆协议〗,类似obfs4,而用户到出口的类似TLS的加密协议是…

](https://pincong.rocks/article/item_id-354511#https://pincong.rocks/article/item_id-354511#")
作者终于上线啦?你刚开始回复很积极,现在基本不回复用户了,积了一堆问题。

品葱用户 **Emmanuels

北美carl** 评论于 2020-04-22

[

好厉害 完全看不懂本文章由 冠名赞助!他赞助了本文葱!这是怎么赞助的……

](https://pincong.rocks/article/item_id-354324#https://pincong.rocks/article/item_id-354324#")
我也看不懂,抱头痛哭。。。。。

品葱用户 **U_511改

匿名爆料公用号** 评论于 2020-04-22

[

*************************诸管理员,此提问事关众葱友安全问题,请勿折叠***…

](https://pincong.rocks/article/item_id-355215#https://pincong.rocks/article/item_id-355215#")
折疊,你用自己的號發。

品葱用户 **workingpaper

霏艺Faye** 评论于 2020-04-25

[

鑒權部分,我在第二篇已經寫了我覺得攻擊者要攻擊,可能性比較低。除非CDN裏有内奸。。。内網穿透,就是…

](https://pincong.rocks/article/item_id-354437#https://pincong.rocks/article/item_id-354437#")
“内网穿透”是有明确定义的,,“公网—NAT—内网”这种不是内网穿透,,“A用户—内网—NAT—公网—NAT—内网—B用户”这种从A直传B的才是,须注意有时候不应该“我的理解是这样而已”,因为这篇文章是写给新手看的,措辞、定义最好使用准确定义,以免产生误导。万一以后别的地方讨论起“内网穿透”,刚好这篇文章的新手读者们事先接受了这篇文章对“内网穿透”的理解,那就会对讨论造成不必要的困扰了。

在这里,“内网穿透”的段落

————
再说下内网穿透的事情:
因为大陆的用户没有公网IP,又因为迷雾通用的UDP协议,所以需要使用内网穿透。
————

按照作者的澄清,可以换成:
————
再说下【洋葱加密】的事情:
为了保证用户的连接安全,作者设置了中转服务器,用户先连接到中间服务器,再由中转服务器帮忙转发数据给最终的出口。
————

说到“VPN不如搭VPS”,其实VPN和VPS是两回事,我自己搭建的话会在VPS上面开通VPN服务,然后自己再连过去。也许你的意思是“商业VPN不如自己搭VPS”吧。

品葱用户 **霏艺Faye

workingpaper** 评论于 2020-04-25

[

“内网穿透”是有明确定义的,,“公网—NAT—内网”这种不是内网穿透,,“A用户—内网—NAT—公网…

](https://pincong.rocks/article/item_id-358768#https://pincong.rocks/article/item_id-358768#")
第一,我承認,内網穿透是我説錯了。你不用繼續這個話題了。
第二,我不是專業人士,希望你不要繼續咬文嚼字 。。。
第三,你咬文嚼字的最後一句話,應該是
與其花錢買商業公司提供的VPN,不如自己花錢去買商業公司的VPS,然後自己在上面搭建代理

-–

我覺得,你那樣嚴謹説話很累。。。你覺得我説話不嚴謹,可以不看我寫的。。。
最後我很歡迎你指出我的錯誤,因爲我很愿意學習!
比如,你除了用到VPN的代理功能,還用到了什麽功能?

update
以我的角度,以後就應該都是IPv6,就沒有nat了,也就沒有内網穿透了
但是udp中轉應該還是存在的

品葱用户 **workingpaper

霏艺Faye** 评论于 2020-04-25

[

第一,我承認,内網穿透是我説錯了。你不用繼續這個話題了。第二,我不是專業人士,希望你不要繼續咬文嚼字…

](https://pincong.rocks/article/item_id-358792#https://pincong.rocks/article/item_id-358792#")
这……不是咬文嚼字啊!是为了避免误导其他人我才告诉你应该怎么改,哎……
如果你认为“我又不是专业人士”因此误导读者不是什么问题,要不然就是“咬文嚼字”,那请继续误导读者吧。希望有读者能够往下看评论。

既然是写文章给别人看,“严谨说话很累”那就可以不用那么严谨,但最起码的一件事是:不要造成误导。
我说了那么多就一件事:避免误导。我看不看你写是我的事,我可以直接不理你的文章,或者转载出去然后价添加论说“连xxxx都错,yyyyyyy”,但我并没有这样做,而是在评论区回复“这样写会更好,不产生误导”。
也许误导得多了才会在别处产生更多的骂战(很熟悉的手法),但我见到有误导的存在就一定会继续提出了,哪怕作者不喜欢。

——————

至于用到的VPN的功能,我第一个回复提到过:
“这样我就可以随意使用 ICMP Ping / traceroute 等工具了”
最重要的两个工具:ping / traceroute (windows: tracert)
其次是根据IP地址段分配流量时只需改路由表就行(例如单独把香港/日本/任意区域流量分到某个连接,其它翻墙流量分到另一个连接),不必修改dnsmasq等解析服务,也不需要修改翻墙软件的配置文件(v2ray就是这样的),灵活性更高。

品葱用户 **咸鱼老李

workingpaper** 评论于 2020-04-25

[

不清楚鉴权部分如何做的(说实话,我没看过代码,瞄过一眼看不懂——从未学过 Go 语言),但不使用 h…

](https://pincong.rocks/article/item_id-354412#https://pincong.rocks/article/item_id-354412#")
其实我也是这么认为的,我之前和 @立紗Lisa 曾经讨论过这个问题。如果真要按照严格的标准来论翻墙安全,类socks代理真的不是强加密的VPN的对手,但是VPN的体量太大了,而且开源的VPN根本没几个(好像也就只有OpenVPN、WireGuard和SoftEther VPN三家是开源的,其余基本上全部闭源),而类socks代理不开源的很难找,最起码的标准都是客户端开源服务端闭源(蓝灯、迷雾通等),服务端开源的更是一抓一大把,比如说著名的shadowsocks、V2Ray等等,这是代理类翻墙工具的优势,两者各有利弊,VPN相对来说安全性高,但是代理类工具相对轻量化省资源,而且代理类翻墙软件的安全性能也不容小视,毕竟两者都从网络安全技术的进步中获益,早年的VPN技术上普遍落后于代理技术的,但是后面VPN技术也从代理技术中汲取经验,两者区别并没有多么的大,不过对于基于多虚拟机技术的隐蔽翻墙来讲,VPN的操作模式比较适合这种情景,因为很多代理还需要搞端口转发之类的东西,基于虚拟网卡的VPN就不需要这么复杂。

品葱用户 **霏艺Faye

workingpaper** 评论于 2020-04-26

[

这……不是咬文嚼字啊!是为了避免误导其他人我才告诉你应该怎么改,哎……如果你认为“我又不是专业人士”…

](https://pincong.rocks/article/item_id-358808#https://pincong.rocks/article/item_id-358808#")
我承認自己説錯了話,誤導了讀者。

至於VPN比代理靈活性更高,我是真沒看到了。。。
麻煩你說具體,詳細點。。。我不要求你用詞準確,只是希望可以詳細點,讓我明白你想說什麽

品葱用户 **workingpaper

咸鱼老李** 评论于 2020-04-26

[

其实我也是这么认为的,我之前和 曾经讨论过这个问题。如果真要按照严格的标准来论翻墙安全,类sock…

](https://pincong.rocks/article/item_id-358811#https://pincong.rocks/article/item_id-358811#")
记忆中还有一个被遗忘的ShadowVPN,就是shadowsocks作者做好ss后再弄出来的。
这也证明了你提到的“后面VPN技术也从代理技术中汲取经验”。

我个人十分希望可以将发展得这么进步的代理技术反过来应用到VPN上面去,毕竟像虚拟机翻墙、网络工具的使用,VPN都具有更大的优势。ShadowVPN是个好作品。
如果不是ss作者被捉去喝茶,那么ShadowVPN就不至于烂尾,这个世界上就多了一个可靠的开源VPN了。

除此之外个人还有一个奢望:VPN能够内置像KCP那样的多倍发包机制。但难度应该不低,希望有人能做到。

品葱用户 **霏艺Faye

咸鱼老李** 评论于 2020-04-26

[

其实我也是这么认为的,我之前和 曾经讨论过这个问题。如果真要按照严格的标准来论翻墙安全,类sock…

](https://pincong.rocks/article/item_id-358811#https://pincong.rocks/article/item_id-358811#")
首先,WireGuard的源碼我讀過了,是chacha20-poly1305的AEAD,並沒有比v2ray,ss,迷霧通加密强度更高,相反socks代理的加密强度應該更高

然後,藍燈早已不再開源,,,但是迷霧通,網站,客戶端,服務端都是開源的。。。你可以自己用迷霧通搭建翻墻服務器!

在我看來,如果VPN或者v2ray是買的,當然VPN更好,如果都是VPS上自建,明顯功能完全等價才對

品葱用户 **workingpaper

霏艺Faye** 评论于 2020-04-25

[

我承認自己説錯了話,誤導了讀者。至於VPN比代理靈活性更高,我是真沒看到了。。。麻煩你說具體,詳細點…

](https://pincong.rocks/article/item_id-358816#https://pincong.rocks/article/item_id-358816#")
……我的本意不是让你说出“我承認自己説錯了話,誤導了讀者”,而是直接改原文,或者增加解释(就像我帮你修改的那段话)。让后面来的读者看明白作者的意图并且不至于误导,不是更好的一件事吗?

————
具体详细例子:
打开系统自带的cmd (Windows),或者Terminal (BSD / Linux / macOS),可以如下操作:

ping www.google.com

在墙内,这条command只能timeout,即使用了socks代理(迷雾通、shadowsocks、V2Ray等)都一样的结果。但如果连上VPN,就可以看到有正常的返回。

traceroute (BSD / Linux / macOS) / tracert (Windows) 同理,墙内使用
tracert www.google.com
或者
taceroute www.google.com
到了墙的位置就会一直timeout,再也无法跟踪下去,用了socks类代理也是一样。但有了VPN,就可以看得到中途路上的连接时延。

这样做的意义:
1、可以明显看得出连接是否成功,尽管socks代理本身也有提示。
2、可以看得出一路上各种连接的时延(刚刚提到过)。
3、透过连续的 ping 可以看得出丢包率。
结合2+3,可以综合判断出这条线路的连接质量如何,例如适不适合玩游戏,毕竟有些游戏对于时延、丢包率非常敏感。

品葱用户 **workingpaper

workingpaper** 评论于 2020-04-26

[

……我的本意不是让你说出“我承認自己説錯了話,誤導了讀者”,而是直接改原文,或者增加解释(就像我帮你…

](https://pincong.rocks/article/item_id-358822#https://pincong.rocks/article/item_id-358822#")
至于为什么要判断线路连接质量,我再多写一点。

墙内有三大运营商,每个运营商的出国连接线路都不是完全重叠的。有时候同一个VPS、同一个网站,南方联通访问非常快,但移动就慢得难以忍受。简单介绍可以看这里: https://pincong.rocks/article/item_id-354045

而商业VPN、机场等线路通常会提供很多线路,有的用起来电信快、有的用起来移动快,他们都已经弄好了,不需要用户操心,缺点是连接点并不掌握在自己手中,有隐私问题,比如某些机场屏蔽网站(品葱就有这样的贴子)。
而自己使用VPS就要自己想办法解决运营商的访问速度的问题,尤其是使用多个运营商服务的用户(比如某用户,用着移动手机,但家里宽带是电信的)对这种需求更加明显,只用单一运营商的用户倒是省心多了。

品葱用户 庆丰帝千刀万剐 评论于 2020-04-25

很好用,谢谢

品葱用户 **咸鱼老李

霏艺Faye** 评论于 2020-04-26

[

首先,WireGuard的源碼我讀過了,是chacha20-poly1305的AEAD,並沒有比v2…

](https://pincong.rocks/article/item_id-358819#https://pincong.rocks/article/item_id-358819#")
实际上VPN也可以利用上socks技术,毕竟socks加密协议在技术上是可以迁移到VPN上的,只是目前还没有人这么做(毕竟VPN不够轻量化,许多人为了轻量化愿意牺牲安全性能),就像楼上说的那样,已经有人实践过基于shadowsocks技术的VPN了,而且我记得Tails还搞出了基于Tor的VPN(Tor本身只是个代理软件),VPN强大的全局转发安全性在利用虚拟机翻墙领域上得到了体现,相比麻烦而且有风险的代理服务器+端口转发+虚拟局域网共享来说,VPN跨虚拟机只需要简单的在网关虚拟机上配置一下虚拟网卡即可,相比之下确实简单快捷的多,功能上VPN和代理显然不等价。至于蓝灯不再开源和迷雾通服务器端开源的消息我不清楚,因为我没怎么接触这些翻墙工具。

品葱用户 **咸鱼老李

workingpaper** 评论于 2020-04-26

[

记忆中还有一个被遗忘的ShadowVPN,就是shadowsocks作者做好ss后再弄出来的。这也证…

](https://pincong.rocks/article/item_id-358818#https://pincong.rocks/article/item_id-358818#")
确实,两者间在技术上的隔阂其实不大,相比之下目前的VPN确实需要那些来自于加密代理的技术,WireGuard尽管作为目前开源业界最安全的VPN客户端,但是其加密技术只和shadowsocks-libev持平,相比代理服务器来说,在应用虚拟机实现多重代理匿名上网的用途中来看,VPN比代理技术要更安全,也更便捷,在目前Intel和AMD之间“核大战”的环境下,民用处理器的多线程能力跨越性提升,而DDR4内存也走向了价格平稳的生命中期,随着固态硬盘技术的发展大容量3D TLC固态的价格变得亲民,这对使用虚拟机实现匿名的反贼群体来说是一件天大的好事,但是传统代理的固有缺陷以及VPN技术的瓶颈成为了许多反贼不接受编程随想式的多虚拟机隔离方案的重大障碍,如果VPN技术能够汲取代理技术的经验,那么反贼被抓的风险就会大大降低,从而让编程随想的那一套多虚拟机匿名上网方案变得亲民化

品葱用户 **workingpaper

咸鱼老李** 评论于 2020-04-26

[

确实,两者间在技术上的隔阂其实不大,相比之下目前的VPN确实需要那些来自于加密代理的技术,WireG…

](https://pincong.rocks/article/item_id-358837#https://pincong.rocks/article/item_id-358837#")
多虚拟机上网确实很方便,除了爬墙,我还用来套两层VPN翻到英国看BBC电视剧,第一层VPN是翻到高速线路,第二层VPN是连英国。哈,不知道算不算滥用。

品葱用户 **咸鱼老李

workingpaper** 评论于 2020-04-26

[

多虚拟机上网确实很方便,除了爬墙,我还用来套两层VPN翻到英国看BBC电视剧,第一层VPN是翻到高速…

](https://pincong.rocks/article/item_id-358841#https://pincong.rocks/article/item_id-358841#")
多重代理确实还有加速的功能,虽然大部分人在直觉上认为多重代理只会让访问速度变慢,但是他们没有考虑到ISP在翻墙中起到的作用,使用多重代理就可以有效的避免运营商疯狂的流量转发,但前提是你必须得摸透自己使用的运营商的国际出口位置以及境外的流量转发地,不然无法实现规避多次流量中转的问题,要想搞清楚这些问题对于外行来说还是相对比较难

品葱用户 习近平威武 评论于 2020-04-27

warpfront是什么东西,meek吗

品葱用户 **霏艺Faye

习近平威武** 评论于 2020-04-27

[

warpfront是什么东西,meek吗

](https://pincong.rocks/article/item_id-360677#https://pincong.rocks/article/item_id-360677#")

你可以自己看下這個文件
cmd\geph-bridge\wfloop.go

品葱用户 **霏艺Faye

workingpaper** 评论于 2020-04-22

~已删除~

品葱用户 **匿名爆料公用号

nullchinchilla** 评论于 2020-04-23

[

另外需要澄清一下,cshirt2是〖混淆协议〗,类似obfs4,而用户到出口的类似TLS的加密协议是…

](https://pincong.rocks/article/item_id-354511#https://pincong.rocks/article/item_id-354511#")

*************************诸管理员,此提问事关众葱友安全问题,请勿折叠*****************
作者好

Geph 迷雾通
1. 除VPN基本的“完全网络掌控”权限外,还需要“访问储存/照片”权限,请问这是技术需要,还是…监视用户需要(几大VPN厂家都只有“完全网络掌控”)
2. 早期版本拒绝在虚拟机环境运行,Linux虚拟机下解压,运行run me文件,提示“no sanbox”, 请问这是早期软件正常研发问题,还是… 早期未解决虚拟机穿透问题
3. 安卓版本运行并关闭后,无法授权其他软件建立VPN连接(点击“允许”无效),请问这是Geph自我保护功能,还是…限制用户VPN选项功能

为民破墙,功德一件。然,共匪奸滑,不得不防。劳请作者阁下在不会泄露能导致软件被GFW封禁的信息的前提下,解答疑惑。

品葱用户 **匿名爆料公用号

U_511改** 评论于 2020-04-23

[

折疊,你用自己的號發。

](https://pincong.rocks/article/item_id-355221#https://pincong.rocks/article/item_id-355221#")
品葱启用Javascript, 安全性有所损失。
**质疑举报类信息最好使用公用账号,谨防敌方随迹侦察**

所以,建议开放公共号在其他楼层发言权限,只要内容非捣乱外宣信息,可以保留该信息。

品葱用户 **霏艺Faye

workingpaper** 评论于 2020-04-25

~已删除~

点击品葱原文参与讨论

最简单好用的 VPS,没有之一,注册立得 100 美金
comments powered by Disqus

See Also

深入浅出【迷雾通】之第一篇

本文章由 @为啥改名还要葱 冠名赞助! 他赞助了本文1600葱! 正文开始:https://pincong.rocks/article/10365 速度很快、特别难封:迷雾通的翻墙协议niaucchi4是我自己根据ScrambleSuit等 …

V2Ray翻墙完全教程(WS+TLS+Web)

前言 本文是搭建V2Ray服务器(ws+tls+web)的完整教程。除了搭建V2Ray+ws+tls+web的过程,还包括配置CDN隐藏IP,打开BBR加速,以及简单配置防火墙防探测。最近(2020年初开始)防火墙加大了封杀VPN的力度,很 …

互联网是人类历史的一段弯路吗?

本文大约 40000 字,阅读需要 102 分钟,由于存在主动或被动删稿风险,建议先行保存。 本文写成于2019年12月,原本预计 2020 年 1 月发表,疫情爆发后一直感觉需要加笔。但时至 2020 年 4 月,新冠疫带来的变化似乎并未 …

SS/V2翻墙机场黑榜,慢慢整理,欢迎补充

在座的女士们先生们,如果你们的网络运营商对品葱等国际主流网站进行了屏蔽,那么翻墙是必不可少的。目前有很多IT水平过关,想赚点零花钱的商家,会开设机场赚钱。开机场现在门槛并不高了,大致分为四块 1 租用海外服务器,部署ss或vmess协议的翻 …