У меня возникают проблемы с тем, чтобы мои экземпляры CentOS 5.5 EC2 (i386 и x86_64) правильно заполняли resolv.conf после загрузки. Независимо от того, что я делаю, я получаю файл resolv.conf по умолчанию:
; generated by /sbin/dhclient-script
search compute-1.internal
nameserver 172.16.0.23
Что я действительно хочу сделать, так это установить свой собственный поисковый домен и добавить два сервера имен. Сначала я попытался добавить /etc/dhclient.conf:
prepend domain-name "mydomain.ec2 "
prepend domain-name-server 1.2.3.4
prepend domain-name-server 1.2.3.5
Это не сработало. Поэтому я также попытался разместить dhclient.conf файл в / и т. д. / dhcp / и / и т. д. / dhcp3. Ни то, ни другое не сработало. Поэтому я также попытался создать / etc / dhclient-enter-hooks и переопределение метода _make_resolv_conf () _, чтобы dhclient-script не перезаписал resolv.conf:
make_resolv_conf() {
;
}
Это тоже не повлияло.
Единственное решение, которое я придумал, - это добавить дополнительный сценарий инициализации, который перезаписывает файл resolv.conf. Это работает, но мне бы очень хотелось сделать это «правильно». Что я делаю не так?
Попробуйте добавить:
PEERDNS=no
В ваш / etc / sysconfig / network-scripts / ifcfg-eth0 (или эквивалент)
Если это не сработает, вы можете использовать хак chattr:
chattr +i /etc/resolv.conf
Учитывая возраст этого вопроса, я полагаю, вы нашли ответ; но для тех, кто нашел этот вопрос в поисках помощи: если это внутри VPC, вам нужно войти в консоль VPC и получить доступ к dhcp-options-sets (https://console.aws.amazon.com/vpc/home#s=dhcp-options-sets) и создайте новый набор опций dhcp. Запишите идентификатор amazon нового набора параметров (dopt-XXXXXXXX)
Затем перейдите в «Ваши VPC» (https://console.aws.amazon.com/vpc/home#s=vpcs), нажмите «Изменить набор параметров DHCP» вверху, затем выберите идентификатор Amazon для нового набора параметров.
Это может помочь: http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_DHCP_Options.html
Это действительно простое решение. Задайте для / etc / sysconfig / network-scripts следующее: PEERDNS = "no" DNS1 = 8.8.8.8 DNS2 = 8.8.4.4
Это предотвратит вставку DNS EC2 в файл resolv.conf.
Вы также можете попробовать добавить следующие записи DNS в сетевые сценарии, связанные с NIC (например, /etc/sysconfig/network-scripts/ifcfg-eth0
для eth0
)
DNS1=8.8.8.8
DNS2=8.8.4.4
Это должно решить вашу проблему http://www.linuxquestions.org/questions/linux-networking-3/how-to-avoid-resolv-conf-been-modified-by-dhcp-client-422431/