获取我的 WAN 上 IP 的 CIDR

获取我的 WAN 上 IP 的 CIDR

我有一个脚本,可以使用笔记本电脑的 IP 和 WAN 上的 CIDR 更新某些远程系统,换句话说,就是互联网如何看待我。

我使用以下命令在 bash 中获取 WAN 上的 IP:

dig +short myip.opendns.com @resolver1.opendns.com

如何在 bash 中获取 WAN 上 IP 的 CIDR?

答案1

一般来说,简短的回答是这实际上不可行。

在非常特殊的情况下,您可以访问您的防火墙,您的防火墙在其外部接口上有一个公共 IP 地址,您可以访问防火墙上的“shall”提示。你可以这样做:

ssh [email protected] 'eval $(ipcalc -np `ifconfig eth1 | sed -n "s/inet addr:\([^ ]*\).*Mask:\([^ ]*\).*/\1 \2/p"`) ; echo $NETWORK/$PREFIX'

该命令是Redhat6特有的。

请记住,此信息可从防火墙获得,因为网络管理员输入 ISP 提供的信息来配置外部接口。因此,获取此信息的唯一可靠方法是询问您的 ISP。即使您可以从 DNS 和 whois 记录中推断出 ISP 的 CIDR,您也无法推断出 ISP 如何在内部细分可用 IP。这是行政职能,必须通过行政手段解决。

相关内容