允许 Linux 连接包含破折号后跟点的域的地址

允许 Linux 连接包含破折号后跟点的域的地址

我无法连接包含带有破折号后跟点的域的地址,例如:

http://example-.domain.tld/

我找到的唯一解决方案是将类似的域添加到 /etc/hosts 中,但我不知道所有这些,所以我不能这样做。

我知道这不符合标准,但 Windows 允许这样的寻址,我也必须在 Linux 下实现它。

系统信息:Fedora 20、linux 3.12.5-302 在 Firefox、Opera 下测试

我测试了现实生活中的公共互联网域,dig 工作正常,但 ping 却不行。

答案1

我相信你不走运,因为 linux libc 不支持这个。您唯一的选择是更改 glibc 或根据某些替代 C 库重建您的软件。

https://sourceware.org/bugzilla/show_bug.cgi?id=4671

您还可以使用您自己的一些 ld 预加载库覆盖 gethostbyname 并在那里提供您自己的解析方法。这就是你不需要建造任何东西。

相关内容