Busybox проверяют с помощью ping-запросов работы IP, но имя хоста nslookup сбои с “плохим адресом”

Это дизайном - Ubuntu является в основном нестабильный Debian. При необходимости в вырезании (и выход за край) край, можно хотеть попробовать экспериментальный Debian или прокручивающийся дистрибутив выпуска как Slackware, Перекати-поле openSUSE, Дуга Linux... или просто пойти для хинду.

14
31.01.2018, 11:07
6 ответов

Проблема с busybox. Я переключился на прекомпилированную версию и у меня не было проблем. Нужно разобраться с опциями компиляции. Спасибо за помощь.

https://gist.github.com/vsergeev/2391575:

В статически скомпилированных glibc-программах (например, busybox в данном случае) известны проблемы с функциональностью DNS, так как libnss должен быть динамически загружен. Построение инструментальной цепочки uClibc и связывание busybox с ней решит эту проблему.

6
27.01.2020, 19:52

Я не уверен, это та же самая проблема, что и у меня, но я недавно обновил и старую систему внутреннего DNS сервера с OpenBSD 3.8 до 5.6, и я потерял возможность разрешать хосты с помощью ping, но команда хоста работала. Оказалось, что мне пришлось добавить 127.0.0.1/8 к директиве match-clients в названии в дополнение к 192.168.0.0/16, которое у меня уже там было, а затем она начала работать корректно после перезапуска с именем.

0
27.01.2020, 19:52

У меня была такая же проблема. Я использовал BuildRoot, чтобы построить файловую систему, чтобы скомпилировать ядро ​​и добавить дополнительные пакеты с Bitebox.

Я мог пинговать только IP-адрес. С URL-адресом команды Ping возвращается: ошибка плохого адреса . Затем я изменил файл resolv.conf .

sudo vim /etc/resolv.conf

nameserver gateway_ip_address
nameserver 8.8.8.8
nameserver 8.8.4.4

И все работало нормально.

0
27.01.2020, 19:52

Я устранил те же симптомы, отредактировав: /etc/nsswitch.conf и добавив DNS в следующую строку:

hosts:      files dns
0
27.01.2020, 19:52

Я столкнулся с той же проблемой, и оказалось, что busybox требователен к формату resolv.conf. Для работы nslookup между тегом сервера имен и адресом должен быть ровно один пробел. Кроме того, /etc/nsswitch.conf должен включать DNS для хоста.

[мастер busybox (git hash 349d72c19 )sysroot -glibc -linaro -2.25 -2018.05 -arm -linux -gnueabihf ]

root@4000000a:~# cat /etc/nsswitch.conf 
passwd:    files compat
shadow:    files compat
hosts:    files dns compat 

Да, вопрос старый, но текущий busybox по-прежнему ведет себя так.

[Я использовал xxd ниже, чтобы показать количество пробелов в resolv.conf]

Это не удается:

root@4000000a:~# xxd /etc/resolv.conf
00000000: 6e61 6d65 7365 7276 6572 2020 382e 382e  nameserver  8.8.
00000010: 382e 380a                                8.8.
root@4000000a:~# nslookup  www.cnn.com 
nslookup: bad address ' 8.8.8.8'

и это работает:

root@4000000a:~# xxd /etc/resolv.conf
00000000: 6e61 6d65 7365 7276 6572 2038 2e38 2e38  nameserver 8.8.8
00000010: 2e38 0a                                 .8.
root@4000000a:~# nslookup  www.cnn.com                
Server:     8.8.8.8
Address:    8.8.8.8:53

Non-authoritative answer:
www.cnn.com canonical name = turner-tls.map.fastly.net
Name:   turner-tls.map.fastly.net
Address: 151.101.1.67
Name:   turner-tls.map.fastly.net
Address: 151.101.65.67
Name:   turner-tls.map.fastly.net
Address: 151.101.129.67
Name:   turner-tls.map.fastly.net
Address: 151.101.193.67

Non-authoritative answer:
www.cnn.com canonical name = turner-tls.map.fastly.net
Name:   turner-tls.map.fastly.net
Address: 2a04:4e42::323
Name:   turner-tls.map.fastly.net
Address: 2a04:4e42:200::323
Name:   turner-tls.map.fastly.net
Address: 2a04:4e42:400::323
Name:   turner-tls.map.fastly.net
Address: 2a04:4e42:600::323
2
27.01.2020, 19:52

sudo vim /etc/resolv.confчтобы отредактировать resolv.conf, убедитесь, что адреса серверов имен (, а также ключевое слово «сервер имен» )разделены одним пробелом, а не запятой, как показано ниже:

nameserver 8.8.8.8 8.8.4.4
-1
27.01.2020, 19:52

Теги

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