AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 578082
Accepted
Friedrich 'Fred' Clausen
Friedrich 'Fred' Clausen
Asked: 2014-02-25 20:50:58 +0800 CST2014-02-25 20:50:58 +0800 CST 2014-02-25 20:50:58 +0800 CST

Java 和 /etc/resolv.conf DNS 服务器故障转移

  • 772

执行摘要

  • resolv.conf如果第一个失败或超时,Java 是否会查询下一个名称服务器条目?
  • Java 将考虑解析器“关闭”的默认超时是多少?

细节

在/etc/resolv.conf大多数站点中,配置了多个 DNS 服务器供系统使用。如果列表中的第一个 DNS 服务器出现故障,任何人都可以澄清使用 Java 会发生什么吗?例如,想象以下情况resolv.conf:

nameserver 8.8.8.8
nameserver 4.4.4.4

如果 8.8.8.8 变得无法访问,那么 Java 会尝试 4.4.4.4 吗?根据我们的经验,它没有 - 我们看到许多线程在等待解析 DNS 名称,即使备份 DNS 服务器是可访问的。

domain-name-system
  • 2 2 个回答
  • 8392 Views

2 个回答

  • Voted
  1. Best Answer
    HBruijn
    2014-02-25T23:11:57+08:002014-02-25T23:11:57+08:00

    在 Linux 上,java 会将主机名解析委托给进行实际解析的底层 C 系统库。

    在查询 /etc/nsswitch.conf 中指定的其他信息源之后,将按照 /etc/resolv.conf 中指定的顺序查询名称服务器(想想 /etc/hosts,但可能是 NIS 或 LDAP)。

    您可以在 /etc/resolv.conf 中指定超时值,根据手册页,默认值为 5 秒。

    如果您的第一个服务器提供有效的错误代码即 servfail,则不会查询第二个名称服务器

    • 3
  2. kubanczyk
    2018-03-16T03:41:22+08:002018-03-16T03:41:22+08:00

    作为一个程序(任何进程,包括 JVM)有它的第一个 DNS 请求,它默认读取并永久缓存其全部内容/etc/resolv.conf。它以后永远不会刷新该信息,即使遇到完全 DNS 故障也是如此。该程序需要对一些特定的系统调用进行编程,以便以更用户友好的方式运行。这个 SO question解释了细节。

    我怀疑您/etc/resolv.conf在 JVM 运行时进行了编辑。重新启动它。

    • 2

相关问题

  • Solaris DNS

  • resolv.conf 在经过一段时间后被更改

  • 为什么有些网站的网址中没有“www”就无法显示?[关闭]

  • 为本地网络中的名称解析添加自定义 dns 条目

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve