LINUX.ORG.RU
решено ФорумAdmin

Cервер Dante при старте пытается обратиться к непонятному IP-адресу.

 , ,


0

1

Здравствуйте! Надеюсь получить здесь помощь по следующему проблеме: сервер Dante при старте пытается обратиться к непонятному IP-адресу, а именно, судя по логам юнита systemd - 52.58.78.16.0. Либо я что-то не понимаю, либо этот IP-адрес какой-то странный - пять октетов заместо четырех.

Сам пакет был установлен из стандартного репозитария Ubuntu. Конфиг для danted.conf был взят из этой статьи.

Я так же посмотрел в логе strace какие файлы используются, и в основном все они из директории /etc. Попробовал поискать grep-ом вышеописанный адрес, без последнего октета, в данной директории, но безрезультатно. Пробовал поискать в исходниках этот IP адрес или домен с ним связанный, но по итогу так же безрезультатно.

Информация о дистрибутиве:

# lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 20.04.2 LTS
Release:	20.04
Codename:	focal

Информация о пакете:

# apt-cache show dante-server 
Package: dante-server
Architecture: amd64
Version: 1.4.2+dfsg-7build1
Multi-Arch: foreign
Priority: optional
Section: universe/net
Source: dante
Origin: Ubuntu
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Peter Pentchev <roam@debian.org>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 997
Pre-Depends: init-system-helpers (>= 1.54~)
Depends: libc6 (>= 2.17), libcrypt1 (>= 1:4.1.0), libpam0g (>= 0.99.7.1), libwrap0 (>= 7.6-4~), lsb-base
Filename: pool/universe/d/dante/dante-server_1.4.2+dfsg-7build1_amd64.deb
Size: 367832
MD5sum: 4e7d5b7a4274b7a50f0d34a2df2ad710
SHA1: ea8907bc54e65d2d30ddfa6f41e0ce1d16693fe7
SHA256: aae2530c171379a3bbe62873f583aaebd9931da29aac163b6a38fe77dbfbd68a
Homepage: https://www.inet.no/dante/
Description-en: SOCKS (v4 and v5) proxy daemon (danted)
 Dante is a circuit-level firewall/proxy that can be used to provide
 convenient and secure network connectivity to a wide range of hosts
 while requiring only the server Dante runs on to have external network
 connectivity.
 .
 This package provides the socks proxy daemon (danted). The server part
 of Dante allows socks clients to connect through it to the network.
Description-md5: 00072cb7e925ba8110ef47af279dbfff

Лог systemd:

# sudo systemctl status danted.service
● danted.service - SOCKS (v4 and v5) proxy daemon (danted)
     Loaded: loaded (/lib/systemd/system/danted.service; enabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Tue 2023-10-24 18:31:47 MSK; 17h ago
       Docs: man:danted(8)
             man:danted.conf(5)
   Main PID: 1145643 (code=exited, status=1/FAILURE)

Oct 24 18:31:47 hostname systemd[1]: Starting SOCKS (v4 and v5) proxy daemon (danted)...
Oct 24 18:31:47 hostname systemd[1]: Started SOCKS (v4 and v5) proxy daemon (danted).
Oct 24 18:31:47 hostname danted[1145643]: Oct 24 18:31:47 (1698161507.294968) danted[1145643]: warning: addrisbindable(): cannot bind address: 52.58.78.16.0 (from address specification 52.58.78.16/32): Cannot assign requested address
Oct 24 18:31:47 hostname danted[1145643]: Oct 24 18:31:47 (1698161507.295001) danted[1145643]: error: checkconfig(): cannot bind external address #0: 52.58.78.16/32
Oct 24 18:31:47 hostname danted[1145643]: Oct 24 18:31:47 (1698161507.295023) danted[1145643]: alert: mother[1/1]: shutting down
Oct 24 18:31:47 hostname systemd[1]: danted.service: Main process exited, code=exited, status=1/FAILURE
Oct 24 18:31:47 hostname systemd[1]: danted.service: Failed with result 'exit-code'.

Вывод команды strace dante-server:

Лог strace

cannot bind address: 52.58.78.16.0 (from address specification 52.58.78.16/32): Cannot assign requested address

Ну как ты читаешь то? У тебя в конфиге прописано что он должен слушать 52.58.78.16/32 но поскольку у твоего компа такого адреса нет - он не может и пишет ошибку. bind - это не подключение куда-то, а занять локальный адрес.

Или это всё-таки твой адрес? Набери ifconfig от рута.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от firkax

Спасибо за ответ. Да, я затупил жестко. Но вот же кусок моего конфига, почему он пытается биндиться к не понятному адресу?

# The server will bind to the localhost, port 9898
# It will only accept connections going to that address/port.
internal: 127.0.0.1 port = 9898
BratecLis
() автор топика
Ответ на: комментарий от BratecLis

Не знаю, я не имел дело с этим прокси и не в курсе его конфигов. А ещё сделай tcpdump на dns-запросы, может он из них этот адрес получает как-то.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 2)
Ответ на: комментарий от keir

Решил проблему. Всем участвовавшим большое спасибо за помощь!

Проблема была в том, что я забыл поменять название сетевого интерфейса. В результате несуществующий сетевой интерфейс eth0 был интерпретирован, как домен, который был дополнен системным DNS-резолвером, до eth0.online. И как выяснилось, кто-то зарегистрировал такой домен и повесил его амазоновскую виртуалку, по этому адресу Dante и пытался выполнить bind().

Это происходит благодаря механизму DNS domain suffix, который присуствует во всех ОС. Что бы узнать список таких суффиксов, надо выполнить команду hostname -d.

BratecLis
() автор топика