• NetBios, WINS, DNS, SAMBA, NMB, SMB резолвинг адресов

 #10541   IgorA100
 05 май 2022, 19:20
Имеется разношерстный парк машин Linux, Windows и хочется из любого места получать правильный адрес по имени машины. Иногда бывает так, что у одной машины имеется два статичного IP адреса, а затем один адрес удаляется и после чего в кеше wins остаются старые записи, которые почему-то не обновляются.
Решение простое:
Для Debian:
Код: Выделить всё# service smbd stop
# service nmbd stop
# find / -name gencache.tdb -o -name wins.tdb -o -name wins.dat | xargs rm
# service smbd start
# service nmbd start

вместо скрипта поиска можно просто перейти в папку /var/lib/samba/ и удалить файлы gencache.tdb, wins.tdb, wins.dat

Можно не полностью удалять все записи, а только битые используя утилиты tdbdump и tdbtool, которые входят в пакет tdb-tools
Код: Выделить всё# on CentOS 7
# service smb stop
# service nmb stop
# tdbdump /var/lib/samba/wins.tdb |grep <the entry you're looking to get rid of>
# tdbtool /var/lib/samba/wins.tdb delete <the data from and including the first double quote after the equal sign to the last double quote>
# service nmb start
# service nmb start


Пример:
Код: Выделить всё# tdbdump /var/lib/samba/wins.tdb |grep NADA

Получаем вывод:

ключ(65) = "НАДА\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\ 00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\ 00\00\00\00\00\00\00\00\00\00\00\00\00\00\1E"
ключ (65) = "НАДА\00\00\00\00\00\00\ 00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\ 00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\ 00\00\00\00\00"


Выполняем:
Код: Выделить всё# tdbtool delete "NADA\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\1E"
# tdbtool delete "NADA\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00"

Источник: https://unix.stackexchange.com/question ... ins-record

Так-же можно еще и "лечить" битые TDB файлы базы: https://forum.lissyara.su/bazy-dannyh-f ... 44455.html