如何使用bash检查子域是否正确重定向到特定IP地址?

如何使用bash检查子域是否正确重定向到特定IP地址?,bash,ping,Bash,Ping,我想用bash检查子域是否重定向到特定的IP地址 这是我目前检查它的方式 ping-c3 subdomain.example.com 我还需要检查IPv6,我现在就是这样做的 ping6-c3 subdomain.example.com 但我不知道如何使用bash脚本自动检查这一点 我不必特别使用ping,但我只需要检查特定的IPv4和IPv6地址是否正确重定向到我的子域 有办法吗?那么这将完成您想要为主机测试DNS条目的操作 #!/usr/bin/env bash host="www.ex

我想用bash检查子域是否重定向到特定的IP地址

这是我目前检查它的方式

ping-c3 subdomain.example.com
我还需要检查IPv6,我现在就是这样做的

ping6-c3 subdomain.example.com
但我不知道如何使用bash脚本自动检查这一点

我不必特别使用
ping
,但我只需要检查特定的
IPv4
IPv6
地址是否正确重定向到我的子域


有办法吗?

那么这将完成您想要为主机测试DNS条目的操作

#!/usr/bin/env bash
host="www.example.com"
ipv4="93.184.216.34"
ipv6="2606:2800:220:1:248:1893:25c8:1946"
if [[ "$(host -t A "$host" 2>/dev/null)" =~ address\ ([[:digit:].]+) ]] \
  && [[ ${BASH_REMATCH[1]} == "$ipv4" ]] \
  && [[ "$(host -t AAAA "$host" 2>/dev/null)" =~ address\ ([[:xdigit:]:]+) ]] \
  && [[ ${BASH_REMATCH[1]} == "$ipv6" ]]; then
  printf 'Host %s is pointing to expected ip addresses:\nIPv4: %s\nand IPv6: %s\n' "$host" "$ipv4" "$ipv6"
fi
输出:

主机www.example.com指向预期的ip地址:
IPv4:93.184.216.34
IPv6:2606:2800:220:1:248:1893:25c8:1946

请更明确地说明重定向测试。是测试DNS条目
子域.example.com
指向给定IP地址,还是测试网络连接,还是测试http/s重定向?我只是通过Cloudflare(灰色云)添加a和AAAA记录,我需要检查这些DNS条目是否生效。当我运行那些
ping
ping6
命令时,我可以看到我的IP地址弹出,这就是我需要检查的。如果我的IP地址弹出,我们就没事了。