LINUX.ORG.RU
ФорумAdmin

OpenVPN как разделить порты клиента и сервера?

 


0

2

Сегодня стакнулся с удивительной ситуацией. На сервере есть OpenVPN, клиент и сервер. В клиенте написано udp ip-адрес 2000 порт. В сервере написано upd ip-адрес 1194. При включении OpenVPN северная часть ругается на то что порт занят

TCP/UDP: Socket bind failed on local address [undef]: Address already in use

Но как-же так? В клиенте порт 2000, а на сервер порт 1194, как порт может быть занят? Подскажите пожалуйста.

Думаю ну ладно, может какая другая программа занимает порт 1194. Делаю команду

netstat -lpnt

И вот что получаю

Активные соединения с интернетом (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State       PID/Program name
tcp        0      0 0.0.0.0:73              0.0.0.0:*               LISTEN      946/sshd        
tcp6       0      0 :::73                   :::*                    LISTEN      946/sshd 
Занят только 73 порт. Как может быть занят 1194 порт?

Andrei_IW
() автор топика
Ответ на: комментарий от Andrei_IW

При включении OpenVPN северная часть ругается на то что порт занят

Это потому что ты нас обманываешь и на самом деле серверная часть пытается использовать занятый порт.

zgen ★★★★★
()
Ответ на: комментарий от zgen

Ну да, я об этом и говорю. Серверная часть OpenVPN ругается на то, что порт уже кем-то занят. Но кем он занят? Его просто некому занимать. Клиентская часть OpenVPN стучится на 2000 порт UDP. А как я понимаю, 2000 и 1194 - это разные числа.

Andrei_IW
() автор топика
Ответ на: комментарий от Andrei_IW

Сейчас в серверной части заменил порт с 1194 на 1195 и серверная часть заработала. Странно, кто может занимать порт 1194? Команда netstat -lpnt не чего не показывает.

Andrei_IW
() автор топика
Ответ на: комментарий от Andrei_IW

netstat -lpnt

Ты аргументы осмысленно передаёшь или тупо копипастишь с первого попавшегося источника? У тебя с такими аргументами не выводятся UDP-порты, на которых что-то может слушать.

post-factum ★★★★★
()
Ответ на: комментарий от turtle_bazon

Да, я эту команду netstat -lpnt скопировал не зная что это значит. У меня просто написано, если хочешь посмотреть какие программы какие порты занимают, нужно просто ввести команду netstat -lpnt. Ну вот, теперь я знаю, что последняя буква означает и теперь я разобрался у себя. Большое спасибо за помощь :)

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

1) Присмотрись к опции «nobind». Для client-side OpenVPN как правило не нужен bind к источнику, пусть ОС выделяет порт динамически.
2) Client-side UDP OpenVPN по-умолчанию делает bind на <local_ip>:1194, а поскольку она не ставит SO_REUSEADDR, то сервер не может открыть такой сокет, о чем и докладывает. Выполнение пункта 1) разрешит ситуацию.

whoami
()
14 января 2016 г.
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.