Да, есть два способа установить жесткие ограничения, даже если они не очень распространены, поскольку цель планировщика - обеспечить максимально быстрое выполнение задачи. .
После нескольких часов поисков я смог решить эту проблему. Оказывается, это было установлено через DHCP:
nmcli -f ip4 device show eth0
IP4.ADDRESS[1]: 172.31.53.162/20
IP4.GATEWAY: 172.31.48.1
IP4.DNS[1]: 172.31.0.2
IP4.DOMAIN[1]: ec2.internal
Я смог переопределить IP4.DOMAIN [1], переопределив значение ipv4.dns-search сетевого интерфейса:
nmcli connection modify uuid \`nmcli connection show --active | grep 802-3-ethernet | awk '{print $(NF-2)}' | tail -n 1` ipv4.dns-search d.sample.com
Или, проще говоря,
nmcli connection modify System\ eth0 ipv4.dns-search "d.sample.com"
Тогда у вас есть Чтобы перезапустить NetworkManager
systemctl restart NetworkManager.service
, я также обнаружил, что, поскольку я работал с экземпляром Amazon, мне нужно обновить файл cloud.cfg.
Файл /etc/resolv.conf всегда будет перезаписан при изменении или обновлении сети. Вы можете контролировать то, что пишется, редактируя файлы в папке /etc/resolvconf/resolv.conf.d/
... а именно в файле head
.
Поместите это в файл /etc/resolvconf/resolv.conf.d/head
:
nameserver 172.31.0.2
search testing01.d.sample.com
Теперь это будет заголовок /etc/resolv.conf
каждый раз обновляется.
Для систем на базе Redhat выполните следующие действия:
Отредактируйте сетевой сценарий, который находится по адресу: / etc / sysconfig / network-scripts
. Вы увидите запись об обнаруженных сетевых устройствах (например, ifcfg-eth0 для сетевого адаптера eth0
).
Отредактируйте этот файл ( / etc / sysconfig / network-scripts / ifcfg-eth0
):
Добавьте эту строку:
DOMAIN=sample.com
Также выполните эту команду:
$ sudo hostnamectl set-hostname --static "testing01.d.sample.com"
Скорее всего, вы необходимо перезагрузить систему, чтобы изменения вступили в силу.
Я хотел бы добавить :ваше первое недопонимание, что такое имя хоста. Когда вы вводите hostname
в командной строке, должно выводиться только имя сервера (host ). Полное доменное имя — это конкатенация имени хоста и домена.
Если команда hostname
выводит host.domain.com
, значит, вы неправильно назвали свой хост. Причина, по которой это неправильно, заключается в том, что вы добавите порядок поиска к имени хоста. Любое разрешение, которое должно произойти в том же домене, закончится результатомhostname.doimain.com.domain.com
/etc/hosts
должен иметь следующий формат: :IP, имя хоста, имя хоста+домен, к которому принадлежит хост xx.xx.xx.xx host host.domain.com
/etc/resolve.conf
должен содержать :search domain.com
/etc/hostname
файл должен содержать host
Записи в файле /etc/hosts
позволяют использовать имя хоста и полное доменное имя для разрешения IP-адреса. Разрешение DNS разрешит хост, а затем добавит порядок поиска, чтобы увидеть, находится ли он в этом домене.