Як псевдонім хоста?


5

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

Я хочу, щоб він працював з динамічним IP-адресою на abcd.efgh.com, тому я не хочу чітко вказувати IP-адресу.

Відповіді:


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.

Відмінно; Я можу обійтися без пінгу тепер, коли я думаю про це, 99,9% мого використання ssh.
Jonas Byström

3

С dnsmasq Варіант --cname=<cname>,<target> ви можете зробити CNAME, що вказує на це <cname> насправді <target>. Зверніть увагу, що це працює тільки якщо DNS ім'я <target> відомо dnsmasq (або у файлі hosts або через DHCP).

Якщо dnsmasq не працює, Незв'язані є розв'язувачем DNS, який підтримує також невідомі цілі в подібній ситуації.


Це в DNS, а не в файлі hosts.
mpez0

@ mpez0: воно все одно буде працювати (dnsmasq призначено для запуску на локальній мережі або на персональному комп'ютері, як кешування DNS-резольвера)
grawity

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 зовсім...


На жаль, не використовуйте libc.
Jonas Byström

Вона не впливає на ping, оскільки ping має setuid і HOSTALIASES працює тільки з виконуваними файлами, які не мають цього прапора. Якщо ви вже є root, він працює, але не при використанні ping як звичайного користувача.
Boris

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.