macronut / ghostcp

GhosTCP is a program for Windows that protects the TCP connections from being interfered.
GNU Lesser General Public License v3.0
837 stars 164 forks source link

Questions #9

Closed aries15 closed 3 years ago

aries15 commented 3 years ago

版本:0.5.1

我不会Go。观察输出日志,[xxx 0]代表的是none,1代表的是ttl,4代表的是w-md5

但当我设置:

log=2
ttl=12
mss=512
method=w-md5
server=8.8.8.8:53

method=none
ipv6=false
example.com=127.0.0.1

curl example.com,结果只有一条[example.com 1]。当注释掉ipv6=false后,结果是

[example.com 1]
[example.com 0]
[8.8.8.8 4]

这是expected的吗?

我还想和hosts结合使用。根据测试,当hosts中存在对应条目时,无论加不加server,本软件似乎都不会匹配请求。当不加server并且hosts中也不存在条目时,仍没有匹配请求。似乎只有存在server并且不存在hosts本软件才能匹配到

另外默认配置里的method=proxy会报错


以上算是BUG Report吧。另外还有两个问题:

macronut commented 3 years ago

The domains from a method to the next method will use the methods specified by the nearest method above. If you want to use hosts, please put the hosts in the program directory. Set the maximum segment size[https://en.wikipedia.org/wiki/Maximum_segment_size] can make the TCP packet returned by the server smaller

aries15 commented 3 years ago

第一句我知道,我是想问我设置了method=none但是log显示的是1不是0,去掉=127.0.0.1才是0。如果没问题就行

第二句,我试了一下把hosts文件放在tcpioneer.exe同一个文件夹下没有用啊……

总之有两个重要问题吧,一是注释掉server,本软件就不生效了。我这里github.io会被重置但没有DNS污染(我也没有把它添加到hosts里),我使用如下配置,仍会被重置:

log=3
ttl=12
mss=512
# method=w-md5
# server=8.8.8.8:53

method=w-md5
github.io

但是当我取消注释server和它对应的method时,就正常了。

第二个问题就是,一旦域名在hosts中,无论加不加server,本软件都无效。


好吧,现在我觉得可以不用hosts了,或者去掉一部分域名,毕竟那个项目很久不更新了。域名如果hosts能用就没必要加到本软件中;如果不能用,那加了hosts也没意义,就加到本软件中,启用server。

看到能支持edns了,那对于无dns污染但会重置的域名来说就好一些了。希望大佬测试能用后release一下,毕竟我不会go没法build。

kovalensky commented 3 years ago

Can TCPioneer randomize TCP segment sizes to confuse heuristics?

aries15 commented 2 years ago

最近感觉我这里w-md5无法解决像针对github.com一样的劣化了,但还是能过RST