问题标签 [resolv]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby - 为 Ruby Resolv.getaddress(ip) 设置超时
我在 Ruby 文档中找不到任何关于如何设置超时以使用 Resolv 类(来自 Ruby 标准库)的类方法 getaddress 来检索域的 IP 的任何内容。
ruby-on-rails - Ruby PUMA 错误:“无法加载应用程序:NameError:未初始化的常量 Service::Resolv”
使用 Windows 10E ruby 2.3.3p222(2016-11-21 修订版 56859)[i386-mingw32] puma v 2.13.4
我是一个巨大的 PUMA 菜鸟,所以请原谅我。我知道代码(python、php,只是不知道 rails、ruby)
因此,我正在尝试恢复我的好友倾倒给我的旧项目。我已经为此工作了 12 多个小时,我已经走了很长一段路,但我无法克服这个错误......我担心这个决议会超出我的范围,但我试一试:
当我尝试启动应用程序时,我收到此错误:
C:\inetpub\wwwroot\Plex-Board>sh runserver.sh * SIGUSR2 未实现,基于信号的重启不可用!* SIGUSR1 未实现,基于信号的重启不可用!*** SIGHUP 未实施,基于信号的日志重新打开不可用!彪马以单一模式启动...
版本 2.13.4 (ruby 2.3.3-p222),代号:仲夏代码的梦想最小线程:0,最大线程:16 环境:生产!无法加载应用程序:NameError:未初始化的常量 Service::Resolv C:/inetpub/wwwroot/Plex-Board/app/models/service.rb:14:in class:Service':未初始化的常量 Service::Resolv (NameError) from C:/inetpub/wwwroot/Plex-Board/app/models/service.rb:1:in' 来自 C:/Ruby23/lib/ruby/gems/2.3.0/gems/railties-4.2.5/lib/rails /engine.rb:472:in 块(2 级)在 eager_load 中!' 来自 C:/Ruby23/lib/ruby/gems/2.3.0/gems/railties-4.2.5/lib/rails/engine.rb:471:ineach' 来自 C:/Ruby23/lib/ruby/gems/2.3。 0/gems/railties-4.2.5/lib/rails/engine.rb:471:in 块在 eager_load 中!来自 C:/Ruby23/lib/ruby/gems/2.3.0/gems/railties-4.2.5/lib/rails/engine.rb:469:ineach' 来自 C:/Ruby23/lib/ruby/gems/2.3。0/gems/railties-4.2.5/lib/rails/engine.rb:469:in eager_load!来自 C:ineager_load!来自 C:/Ruby23/lib/ruby/gems/2.3.0/gems/railties-4.2.5/lib/rails/application/finisher.rb:56:in each' 来自 C:/Ruby23/lib/ruby/gems /2.3.0/gems/railties-4.2.5/lib/rails/application/finisher.rb:56:inblock in module:Finisher' 来自 C:/Ruby23/lib/ruby/gems/2.3.0/gems/railties -4.2.5/lib/rails/initializable.rb:30:in instance_exec' 来自 C:/Ruby23/lib/ruby/gems/2.3.0/gems/railties-4.2.5/lib/rails/initializable.rb: 30:inrun' 来自 C:/Ruby23/lib/ruby/gems/2.3.0/gems/railties-4.2.5/lib/rails/initializable.rb:55:in block in run_initializers' 来自 C:/Ruby23/lib /ruby/2.3.0/tsort.rb:228:inblock in tsort_each' from C:/Ruby23/lib/ruby/2.3.0/tsort.rb:350:in block (2 levels) in each_strongly_connected_component' from C:/ Ruby23/lib/ruby/2.3.0/tsort.rb:431:ineach_strongly_connected_component_from' 来自 C:/Ruby23/lib/ruby/2.3.0/tsort.rb:349:in 块中 each_strongly_connected_component' 来自 C:/Ruby23/lib/ruby/2.3.0/tsort.rb:347:ineach '来自 C:/Ruby23/lib/ruby/2.3.0/tsort.rb:347:in call' 来自 C:/Ruby23/lib/ruby/2.3.0/tsort.rb:347:ineach_strongly_connected_component' 来自 C:/ Ruby23/lib/ruby/2.3.0/tsort.rb:226:in tsort_each' 来自 C:/Ruby23/lib/ruby/2.3.0/tsort.rb:205:intsort_each' 来自 C:/Ruby23/lib/ruby /gems/2.3.0/gems/railties-4.2.5/lib/rails/initializable.rb:54:in run_initializers' 来自 C:/Ruby23/lib/ruby/gems/2.3.0/gems/railties-4.2。 5/lib/rails/application.rb:352:初始化!来自 C:/inetpub/wwwroot/Plex-Board/config/environment.rb:5:in '来自 C:/Ruby23/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:inrequire' 来自 C :/Ruby23/lib/ruby/2.3。
有问题的文件(C:/inetpub/wwwroot/Plex-Board/app/models/service.rb)中有这一行:
class Service < ActiveRecord::Base belongs_to :service_flavor, polymorphic: :true # before_destroy :destroy_associated after_initialize :init
def ping ping_destination = connect_method begin Timeout.timeout(@timeout) do s = TCPSocket.new(ping_destination, self.port) s.close self.update(online_status: true, last_seen: Time.now) return true end rescue Errno:: ECONNREFUSED self.update(online_status: true, last_seen: Time.now) return true rescue Timeout::Error, Errno::ENETUNREACH, Errno::EHOSTUNREACH, SocketError self.update(online_status: false) return false end end
def connect_method if !self.dns_name.blank? self.dns_name else self.ip end end end
我可以猜到这段代码的作用,但我不确定如何修复它,或者即使可以修复。
苏,有什么想法吗?
shell - 如何从 Docker 容器中禁用和启用互联网连接?
我正在清除 /etc/resolv.conf 以禁用网络:
sudo mv /etc/resolv.conf /etc/resolv_backup.conf
sudo touch /etc/resolv.conf
然后启用网络:
sudo mv /etc/resolv_backup.conf /etc/resolv.conf
但是资源很忙,我无法执行这些命令。
我想从容器内禁用互联网,而不是使用:
docker network disconnect [选项] 网络容器
从部署容器的服务器执行此操作。我正在使用阿尔卑斯山。
c - DNS:使用 resolv.h 检索主机 IP 地址
我正在尝试使用resolv.h
BIND 中的库来理解 DNS 查询。我正在努力尝试从 . 返回的 RR 中解析 IP 地址 ns_parserr()
。我可以使用https://docstore.mik.ua/orelly/networking_2ndEd/dns/ch15_02.htm提供的代码成功解析权威 NS ,但我似乎无法获取A
类型记录并打印它们。主要是因为我不知道 IP 地址是如何在ns_rr
结构内部编码的。查看实现,RDATA 属于const u_char *
类型。如何从该记录中获取 IP?
我通常会尝试自己修复这些东西,但是resolv.h
互联网上关于图书馆的信息并不多,除了引用的来源。谢谢大家的支持,我很感激。
amazon-web-services - 为什么 EC2 /etc/resolv.conf 总是为空,重启实例可以填充这些值,但稍后它会再次为空
有谁知道为什么/etc/resolv.conf
有时会变空并重新启动实例,它可以将正确的值填充到其中,但过了一段时间,它会再次为空,由同一个 AMI 创建的所有实例都有这个问题。
实例在 a 下VPC
,我们启用了DNS resolution
and DNS hostnames
,甚至ClassicLink DNS Support
。
并且运行dhcpclient
不起作用。
有人可以帮忙吗?谢谢
c - resolv.h 中的头文件缺失值
代码
我试图实现这段代码:
问题
似乎 resolv.h 头文件中未定义“HEADER”,因为我收到此错误:
这个头文件有旧版本吗?
docker - 当我尝试在 ubuntu:18.04 中移动 /etc/resolv.conf 时出现“设备或资源繁忙”。怎么修?
我的 Docker 容器 ( ubuntu:18.04
) 中有一个 VPN 客户端。
客户必须执行以下操作:
然后客户端应该/etc/resolv.conf
使用他们的 DNS 服务器创建新的。但是,移动失败并出现错误:
这可以解决吗?谢谢你提前。
PS:我无法更改 VPN 客户端代码。
kubernetes - coredns 正在运行但在 conjure-up k8s cdk 后尚未准备好
我已经V1.18.2
使用 conjure-up(使用仿生)部署了 Kubernetes(CDK)
更新:完全破坏了上面的环境,然后在这里使用 CDK 包手动重新部署它https://jaas.ai/canonical-kubernetes,相同的 K8S 版本相同操作系统版本(Ubuntu 18.04)没有区别。
正在通过coredns
解决/etc/resolv.conf
,见configmap
下文:
https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/#known-issues这里有一个已知问题,而/etc/resolv.conf
不是/run/systemd/resolve/resolv.conf
我编辑了coredns
配置映射以将其指向,/run/systemd/resolve/resolv.conf
但设置被还原。
我也尝试设置kubelet-extra-config
为{resolvConf: /run/systemd/resolve/resolv.conf}
,重新启动服务器,没有任何变化:
但是我可以在按照https://kubernetes.io/docs/tasks/administer-cluster/reconfigure-kubelet/kubelet
检查配置时看到配置中的更改
这是我在 coredns pod 中遇到的错误:
查看 Kubernetes 服务:
这是coredns
部署:
有人可以帮忙吗?
更多信息: K8S SVC 配置正确:
我可以用 --insecure 卷曲两个 IP 地址
描述 EP:
其他更多发现:看起来vnet
juju 在CDK
部署期间创建的大多数 s 都没有运行。我怀疑这是因为apparmor
(基于https://jaas.ai/canonical-kubernetes/bundle/21)
注意:如果您希望在笔记本电脑上本地部署此捆绑包,请参阅替代部署方法下有关 Conjure-Up 的部分。通过 juju 的默认部署将无法正确调整 apparmor 配置文件以支持在 LXD 中运行 kubernetes。这时,它是一个必要的中间部署机制。
另一个新更新:我尝试了 xenial 部署,并注意到/etc/resolv.conf
配置正确,没有问题,但问题仍然存在
python - 如何在 python 中解析 root 的结果?
如何在根解决后获得结果。
结果:
android - 使用 libresolv 进行 Android NDK DNS 解析
我想在 Android 项目中使用现有的 C/C++ 库。该库包含对标头(Linux 上的 libresolv)的调用res_query
,该resolv.h
标头存在于 NDK 中,并且根据Wikipedia的说法,它是 Android 的 Bionic libc 的一部分。
从构建文件中删除显式链接指令后,程序构建和链接正常-lresolv
,但 DNS 解析res_query
总是失败(返回-1
)。
为了进一步检查这个问题,我构建了一个示例程序,只使用了一个调用res_query
Android Studio 的示例 C++ 项目:
该程序也总是以result == -1
and失败h_errno == 2
。
我曾尝试同时提供该应用程序android.permission.INTERNET
,android.permission.ACCESS_NETWORK_STATE
但均未成功。
使用 Android NDK CMake 工具链将其构建为简单的 C 命令行应用程序,并使用 将其推送到 Android 设备上adb
,它也表现出相同的行为。使用默认的 Linux 工具链构建完全相同的代码并在其中执行它可以正常工作并返回有效的 DNS 响应。
我在网上找不到任何resolv.h
关于 Android 状态的文档或讨论,除了这个关于 DNS Resolvers 的 AOSP 文档页面,它的名称resolv
和状态如下:
出于应用兼容性原因,仿生中的代码继续存在
建议它应该在本机应用程序代码中工作。
我知道大多数 Android 系统不附带resolv.conf
文件,这很可能是问题所在。但是说明这一点的防弹文档根本不存在。有谁更具体地知道是否resolv.h
可以在 Android NDK 应用程序中使用系统提供的 DNS 名称服务器设置进行 DNS 查询?