我希望 ssh 配置中有一个与任何本地 IP 匹配的主机部分:
Host 10.* 192.168.*.* 172.31.* 172.30.* 172.2?.* 172.1?.*
setting
setting
...
只要我直接连接到相关 IP,这就有效。但是,如果我连接到的主机名稍后解析为这些 IP 之一,则该部分将被忽略。
sshd 有匹配地址我认为可以用于此目的的部分,但它们在 ssh 客户端配置中不起作用。
有什么办法可以实现这一点吗?
答案1
您不能仅使用ssh_config
选项来做到这一点,但有exec
一个选项可以为您做到这一点:
Match exec "getent hosts %h | grep -qE '^(192\.168|10\.|172\.1[6789]\.|172\.2[0-9]\.|172\.3[01]\.)'"
setting