【音乐】Bye Bye Bye
@熊熊 , 这歌很好听哦~
3 个评论
熊熊暂时退葱了
@熊熊
@熊熊
霏艺Faye
图书管理员
@沉默的廣場
本來不想寫的,但是還是寫點什麽吧。。。
關於KCP,看代碼
v2ray-core\transport\internet\kcp\io.go
這一個文件,就足夠了
注意到
func (r *KCPPacketReader) Read(b []byte) []Segment {
和
func (w *KCPPacketWriter) Write(b []byte) (int, error) {
兩個函數
我們可以知道,協議格式如下
報文頭+payload
報文頭,是根據header配置,可以配置DTLS,wireguard。。。增加僞裝
payload,用異或加密了。。。
因爲加密了,所以看不出kcp【24字節】或者mkcp【18字節】的報文頭
擧個例子,如果配置如下
所以,最終報文就是
DTLS頭 + payload
===========分割綫===============
默認的代碼,當然很好破解,對所有的udp流量,執行
v2ray-core\transport\internet\kcp\xor.go文件
裏的xorbkd函數,不管你怎麽僞裝都是明文流量。。。
我的意思,特別簡單,你只要自己修改xor.go的xorfwd,xorbkd兩個函數就可以了~
因爲共產黨不知道你怎麽加密流量,所以沒法有針對破解!
這樣,你代碼量最小,卻效益最大!!!【只改了一個文件的兩個函數】
重點:
這兩個配置項不可以太大,UDP碼率太高,必然是翻墻。沒有其他可能。。。
舉個例子,MP3碼率是128Kbps,B站的1080p視頻,碼率是6Mbps
所以,你udp碼率達到10Mbps以上是不正常的
我建議是2Mbps就已經是極限了,超過這個數值,很大程度是翻墻。其實2Mbps,我覺得網速足夠了
本來不想寫的,但是還是寫點什麽吧。。。
關於KCP,看代碼
v2ray-core\transport\internet\kcp\io.go
這一個文件,就足夠了
注意到
func (r *KCPPacketReader) Read(b []byte) []Segment {
和
func (w *KCPPacketWriter) Write(b []byte) (int, error) {
兩個函數
我們可以知道,協議格式如下
報文頭+payload
報文頭,是根據header配置,可以配置DTLS,wireguard。。。增加僞裝
payload,用異或加密了。。。
因爲加密了,所以看不出kcp【24字節】或者mkcp【18字節】的報文頭
擧個例子,如果配置如下
"streamSettings": {
"network": "mkcp", //此处的 mkcp 也可写成 kcp,两种写法是起同样的效果
"kcpSettings": {
"uplinkCapacity": 5,
"downlinkCapacity": 5,
"congestion": true,
"header": {
"type": "dtls"
}
}
}
所以,最終報文就是
DTLS頭 + payload
===========分割綫===============
默認的代碼,當然很好破解,對所有的udp流量,執行
v2ray-core\transport\internet\kcp\xor.go文件
裏的xorbkd函數,不管你怎麽僞裝都是明文流量。。。
我的意思,特別簡單,你只要自己修改xor.go的xorfwd,xorbkd兩個函數就可以了~
因爲共產黨不知道你怎麽加密流量,所以沒法有針對破解!
這樣,你代碼量最小,卻效益最大!!!【只改了一個文件的兩個函數】
重點:
"uplinkCapacity": 5,
"downlinkCapacity": 5,
這兩個配置項不可以太大,UDP碼率太高,必然是翻墻。沒有其他可能。。。
舉個例子,MP3碼率是128Kbps,B站的1080p視頻,碼率是6Mbps
所以,你udp碼率達到10Mbps以上是不正常的
我建議是2Mbps就已經是極限了,超過這個數值,很大程度是翻墻。其實2Mbps,我覺得網速足夠了