Не удается подключиться к кликхаусу на удаленном сервере со странным адресом

У меня есть сервер clickhouse, работающий в подсистеме Linux для Windows на сервере Windows 2016. Я установил правила брандмауэра как для входящих, так и для исходящих подключений на 9000 и 8123 портах. Я использовал конфигурацию по умолчанию. Когда я пытаюсь подключиться удаленно, возникает это исключение:

DB::Exception: User default is not allowed to connect from address ::ffff:10.201.1.2

Как должна выглядеть конфигурация пользователя, чтобы проходило удаленное соединение.


person Tomáš Repík    schedule 13.10.2017    source источник


Ответы (3)


В файле users.xml настройте параметры сети.

<networks>
    <ip>::/0</ip>
</networks>

В config.xml раскомментируйте

<listen_host>::</listen_host>
person Saji CS    schedule 15.10.2019
comment
Разве это не параметр по умолчанию в файле users.xml? - person dter; 15.06.2020

Вы должны разрешить доступ из внешних сетей для пользователя по умолчанию. Добавлять

<networks>
    <ip>::/0</ip>
</networks>

к конфигурации пользователя по умолчанию. Подробнее см. здесь.

Также он должен быть включен по умолчанию.

person Nikolai Kochetov    schedule 13.10.2017
comment
То, что у меня было, и исключение все еще возникло, я также пробовал несколько значений, таких как: ::/0 10.201.1.2 ::ffff ::ffff:10.201.1.2 ::ffff:10.201.1.2. - person Tomáš Repík; 16.10.2017

Я разобрался в проблеме сам.

Я заметил, что по умолчанию внутри каталога dbms\src\Server\user.d находится файл allow_only_from_localhost.xml. Итак, я подумал, что мне нужно удалить этот файл, и все будет работать. Это не помогло, но я вдохновился и переместил свой networks.xml файл в каталог dbms\src\Server\user.d и TA-DA! удаленное соединение наконец начало работать. Помимо перемещения файла, я также скорректировал его содержимое, чтобы оно соответствовало синтаксису из allow_only_from_localhost.xml файла. Не имело значения, храню ли я файл allow_only_from_localhost.xml в каталоге dbms\src\Server\user.d или нет, удаленное соединение работало в обоих случаях.

person Tomáš Repík    schedule 17.10.2017