Использование вытеснить поиск домена в dhclient + resolvconf добавляет?

1107
gertvdijk

На моем компьютере с Ubuntu 16.04 я использую DHCP для получения IP-адреса от маршрутизатора моего интернет-провайдера. Он отвечает DNS-серверами и поисковыми доменами DNS, которые я хочу переопределить.

/etc/dhcp/dhclient.conf:

option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;  send host-name = "my.hostname";  request subnet-mask, broadcast-address, routers, interface-mtu;  supersede domain-name-servers 10.1.2.3; supersede domain-search "mydomain.tld"; 

Здесь я настроил DHCP-клиент на:

  • не запрашивать доменные имена серверов и / или поисковый домен
  • переопределить оба, domain-name-serversи domain-searchесли так или иначе предусмотрено.

Однако что теперь происходит с resolvconf:

/etc/resolv.conf:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN nameserver 10.1.2.3 search home mydomain.tld 

Заметили homeзапись там? Это то, что мой дерьмовый маршрутизатор ISP посылает мне, несмотря на то, что я не запрашиваю его (подтверждено с помощью tcpdump, см. Ниже). Так что, очевидно, dhclient добавляется вместо переопределения, как если бы я использовал appendвместо supersede.

Что я делаю неправильно? Я хочу, чтобы dhclient игнорировал поддельный ненастраиваемый домен поиска DNS.

Я бы посчитал это проблемой безопасности, поскольку я не хочу, чтобы он выполнял поиск пугающего домена для каждого DNS-запроса, который я делаю на своем хосте. Кроме того, почему dhclient даже пытается разобрать варианты ответа, которые он не запрашивал?

Информация о версии программного обеспечения (все версии Ubuntu 16.04):

ii isc-dhcp-client 4.3.3-5ubuntu12.7 ii resolvconf 1.78ubuntu4 

ТСРйитр:

01:09:35.629136 IP (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 328) 0.0.0.0.68 > 255.255.255.255.67: [udp sum ok] BOOTP/DHCP, Request from 52:54:00:23:86:a8, length 300, xid 0x9e3d912a, Flags [none] (0x0000) Client-Ethernet-Address 52:54:00:23:86:a8 Vendor-rfc1048 Extensions Magic Cookie 0x63825363 DHCP-Message Option 53, length 1: Request Requested-IP Option 50, length 4: 192.168.999.24 Hostname Option 12, length 27: "my.hostname" Parameter-Request Option 55, length 4:  Subnet-Mask, BR, Default-Gateway, MTU 01:09:35.642166 IP (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 576) 192.168.999.1.67 > 192.168.999.24.68: [udp sum ok] BOOTP/DHCP, Reply, length 548, xid 0x9e3d912a, Flags [none] (0x0000) Your-IP 192.168.999.24 Server-IP 192.168.999.1 Client-Ethernet-Address 52:54:00:23:86:a8 Vendor-rfc1048 Extensions Magic Cookie 0x63825363 DHCP-Message Option 53, length 1: ACK Server-ID Option 54, length 4: 192.168.999.1 Lease-Time Option 51, length 4: 3600 Hostname Option 12, length 27: "my.hostname" Subnet-Mask Option 1, length 4: 255.255.255.0 Default-Gateway Option 3, length 4: 192.168.999.1 Domain-Name-Server Option 6, length 8: 1.2.3.4,4.5.6.7 Domain-Name Option 15, length 4: "home" TTL Option 23, length 1: 64 
0

1 ответ на вопрос

0
gertvdijk

Я заменял неправильный вариант dhcp.

Вместо domain-name-searchопции мой маршрутизатор провайдера ответил domain-nameопцией. Последний вариант заменить.

Кажется, что комбинация dhclient-resolvconf объединяет информацию как от основного имени домена ( homeздесь), так и с доменами поиска.

Все еще открыт для размышлений: почему dhclient пытается разобрать и обработать опцию domain-name? Я не просил это. По-видимому, мне нужно заменить все ответы, которые я не просил для этого ненадежного устройства, которое посылает мне? Похоже, хороший вектор атаки здесь ...

Похожие вопросы