5

Можно ли сохранить сетевой псевдоним - без указания IP-адреса в файле hosts? Например, у меня есть abcd.efgh.com но я хочу abcd -> abcd.efgh.com чтобы ping и ssh работали как обычно.

Я хочу, чтобы он работал с динамическим IP на abcd.efgh.com, поэтому я не хочу явно указывать IP-адрес.

3 ответа3

6

Немного менее удобный способ - создать псевдонимы для ping и ssh , например:

alias pingfoo="ping foohost.domain.tld"

OpenSSH поддерживает добавление псевдонимов имени хоста (и многих других опций) в ~/.ssh/config:

Host foo
    Hostname foohost.domain.tld
    # You can also add User, Port, every possible ssh(1) option.
3

С параметром dnsmasq --cname=<cname>,<target> вы можете создать CNAME, который указывает, что <cname> действительно <target> . Обратите внимание, что это работает, только если DNS-имя <target> известно dnsmasq (либо в файле hosts, либо через DHCP).

Если dnsmasq не работает, Unbound является распознавателем DNS, который поддерживает неизвестные цели в аналогичной ситуации.

2

Если ваша ОС использует GNU glibc, вы можете использовать ее функцию $HOSTALIASES .

На странице руководства gethostbyname(3):

DESCRIPTION

       [etc etc etc] If name doesn't end in a dot and the environment variable
       HOSTALIASES is set, the alias file pointed to by HOSTALIASES will first
       be searched for name (see hostname(7) for the file format). The current
       domain and its parents are searched unless name ends in a dot.

Это работает как с gethostbyname() и с более новым getaddrinfo() ; однако, это, кажется, не влияет на ping вообще ...

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .