lennylxx / ipv6-hosts

Fork of https://code.google.com/archive/p/ipv6-hosts/, focusing on automation
MIT License
4.46k stars 1.03k forks source link

Adding feature of DOH, EDNS, TCP connectivity detection and simplify hosts.out #291

Closed sharuijinfriend closed 5 years ago

sharuijinfriend commented 5 years ago

The changes

In the environment of CERNET2, 2001:4860:4860::8888 and 2001:4860:4860::8844 are actually blocked. So the old update_hosts.py cannot work correctly in China.

我是一个计算机技术的门外汉,正在自学python,所以写的不好也请见谅。因为我自己也需要用,然后也挺感兴趣就改了您的代码。有些冗余的代码实际上是可以删除的,但是我比较懒也没删掉。比如实际上已经不使用dig命令了,那么对dig是否安装的检测也就没有必要。

lennylxx commented 5 years ago

门外汉技术水平不高可以理解,但是我不能理解你为什么要把项目的版权信息、LICENSE删掉?这不是技术范畴了,已经是道德范畴了。删掉就删掉,我只当你不懂法律,也不懂开源社区的规则,我可以假装没看见。你还把你的改动发Pull Request到原项目,是出于什么目的?你是生怕我看不见你删了吗?

产生的hosts含有很多注释行,不利于减小hosts文件体积,尤其是对于ROM较小的openwrt来说还是挺大的

注释掉的行也许某一天会恢复访问,注释而不是删掉是为了节省下次重新收集的时间。如果你需要,你大可以自己手工删掉,全局替换即可

scholar.google.com等一些网站没有AAAA记录,生成hosts是被注释掉的。需要后续手动增加

关于没有AAAA记录的问题,我已经在wiki中做了说明,如果你仔细看过的话就发现这并不是本项目的缺陷

默认是udp或者tcp方式查询,但是都是明文传输,无法保证解析结果的可靠性。返回的解析结果有可能是GFW伪造的。

是有可能伪造,这也是为什么脚本里有blackhole和invalid_address 作为黑名单检测,这也不是本项目的缺陷

sharuijinfriend commented 5 years ago

1.请你不要上纲上线,轻易地指责我没有道德。关于把项目的版权信息、LICENSE删掉,这个是因为我不懂得规则,我在这里诚恳道歉。我在push的时候看到文件那么多,就想提交少一些的文件方便比较一些。我会加上它,我并不是有意的。我还有一个branch叫master,里面并没有删掉啊,public只是我担心文件太多所以删了一堆。 2.inputfile.out是一定生成的,inputfile.outsimplify是可以选择生成的,为什么要生成这个文件我也说过了。在inputfile.out中我并没删改任何东西,inputfile和inputfile.out中都包含了完整的域名,并没有丢失。 3.关于没有AAAA记录的问题,输出的时候自动增加不是更加方便一些吗?而且hosts.out中我没有做任何删改,仅仅是在simplify的文件中加上了额外的AAAA记录。 4.blackhole和invalid_address是需要人为的更新吧,我觉得对每个ip做检测会更好一些吧,然后用一个set去记录blackhole和invalid_address,这样速度上也不会差太多。 5.你默认使用的2001:4860:4860::8888(8844) 在教育网的环境下已经无法使用,而且系统自带的dig并不支持edns,解析到的是台湾的地址。用DOH我觉得是更好选择。

是我说的不对,这不是项目的缺陷,但是这个项目是有改进的空间的。所以我才会pull request,让更多的人去改进它这也是开源的目的吧。我很喜欢这个项目,所以才会去改进它呀。当然如果你觉得我改的没不好,我也可以理解。