2

Я пытаюсь установить сервер SVN на моем компьютере с Linux (Ubuntu 9.04). Я скопировал строку для запуска svnserve в файл inetd.conf и перезапустил inetd . Но я не могу подключиться с клиентом SVN к серверу. Я всегда получаю сообщение об ошибке

В соединении отказано

Теперь начинается странная часть: если я позвоню

netcat localhost 3690

в соединении тоже отказано. Но если я позвоню

telnet localhost 3690

Я получаю некоторые ответы от svnserve .

Любые идеи, что может быть причиной этого - и как я могу заставить мой svnserver работать?


Еще несколько деталей:

  • Я установил inetutils-inetd (Версия 2: 1.6-1)
  • netstat дает мне линию

    tcp6 0 0 ::: 3690 ::: * СЛУШАТЬ

  • Если я отключу все "специальные адреса IPv6" в /etc/hosts , telnet перестанет работать и также выдаст "отказано в соединении".

  • Я пытался активировать daytime сервис inetd (порт 13). То же поведение: netcat не может подключиться, telnet есть.
  • Насколько я вижу, нет брандмауэра (ufw установлен, но не включен).

2 ответа2

1

Netcat использует только IPv4, а сервер прослушивает только IPv6.

Попробуйте установить этот параметр ядра, затем убить и перезапустить inetd:

sysctl net.ipv6.bindv6only=0

(И измените строку обслуживания inetd на tcp . О времени вы начинаете использовать v6)

0

Я нашел ответ сам ...

Проблема была в этой строке в inetd.conf:

svn stream tcp nowait subversion /usr/bin/svnserve svnserve -i -r /home/svn

После переключения ключевого слова tcp на tcp4 все работает нормально. Теперь netstat дает мне такой вывод:

tcp        0      0 0.0.0.0:3690            0.0.0.0:*               LISTEN

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .