【问题标题】:Linux route add with subdomains wildcard -host *.domain.comLinux 路由添加子域通配符 -host *.domain.com
【发布时间】:2013-04-19 00:59:49
【问题描述】:

如果我有一个包含以下两个命令的脚本来修改路由

/sbin/route add -host pandora.com -interface ppp0 /sbin/route add -host internal-tuner.pandora.com -interface ppp0

有没有办法用 *.pandora.com 之类的东西创建一个唯一的命令路由?

【问题讨论】:

    标签: linux dns subdomain wildcard routes


    【解决方案1】:

    我认为答案是否定的。当您使用 dns 名称而不是 ip 地址添加路由时,route 命令所做的第一件事就是查找它并将其转换为 ip 地址。因此,如果 pandora.com 目前解析为 172.16.0.1,那么机器真正在做的是通过 ppp0 添加到 172.16.0.1/32 的路由。当机器决定如何路由数据包时,它会使用您设置的 IP 地址和掩码来执行此操作,您使用的任何域名在那个阶段早已被遗忘。

    为了给域中的所有机器添加路由,你必须知道所有的 IP 地址,这意味着你需要知道所有的主机名。如果您的 DNS 服务器设置为允许此类事情,您可以向它询问 pandora.com 域中的所有内容,但如今很少有 dns 服务器会允许此类事情。

    但是...如果您知道 pandora.com 中的所有内容都有一个起始于 172.16.0.0 和 172.16.0.255 之间的 IP 地址(所谓的网络块,您可以使用 whois 获得这种东西)您可以为整个网络添加一条路由,例如:

    ip route add 172.16.0.0/24 dev ppp0
    

    还要注意,我在那里使用了 iproute2 命令,而不是 /sbin/route。

    【讨论】:

      猜你喜欢
      • 2021-05-12
      • 2017-05-18
      • 1970-01-01
      • 1970-01-01
      • 2014-12-09
      • 1970-01-01
      • 1970-01-01
      • 2015-07-02
      • 2019-10-17
      相关资源
      最近更新 更多