如何创build没有IP地址的主机名别名?

在linux中, /etc/hosts存储ip别名。

但是我想创build一个主机名而不知道它的IP地址。 在Amazon RDS中,端点是一个很长的域名,例如: my-db.ooxxooxxooxxoo.ap-northeast-1.rds.amazonaws.com 。 它不build议通过IP连接(因为它可能会改变)。

在这种情况下,如何解决一个简单的dbstring到这个域名? 没有任何外部帮助,如DNS CNAME或Route53解决scheme。

设置一个本地名称服务器(例如dnsmasq ),并将所需的CNAMElogging插入到该服务器中。

dnsmasq.conf:

 cname=alias,horrible-long-hostname.example.com 

resolv.conf的:

 nameserver 127.0.0.1 

如果你所要做的只是简化ssh到这个系统,你可以使用一个sshconfiguration文件。 创build并编辑〜/ .ssh / config以包含:

Host db: Hostname my-db.ooxxooxxooxxoo.ap-northeast-1.rds.amazonaws.com

之后,一个简单的“ssh db”将查找您的.ssh / config文件中指定的内容并将其连接起来。