Jump to content

Трансляция steam через VPN-сервер Keenetik


Recommended Posts

Добрый день!
В клиенте steam есть функция трансляции, которая позволяет с  одного ПК управлять игрой, запущенной на другом ПК через локальную сеть.
Также без проблем трансляция работает через hamachi
Многие пишут, что удаётся транслировать и через интернет, достаточно подключиться к одному VPN

Комментарии с хабра
Без подробностей

Через линукс-роутер

Видео с ютуба:
Через встроенный PPTP-сервер Asus RT-N12

Хотелось бы сделать такое же через мой Keenetik Ultra Rev.A NDMS v2.06(AAGJ.0)C3
Штатными средствами сделать не получилось.

Мой компьютер, который вещает трансляцию, находтся за кинетиком, есть белый адрес.
Компьютер, принимающий трансляцию, тоже за роутером, TP-Link TL-WR841N.
VPN клиент настраивался на принимающем компьютере, а не на его роутере.

Настраивал по этим инструкциям:
https://help.keenetic.com/hc/ru/articles/213967809-Настройка-VPN-сервера-PPTP-в-Keenetic
https://help.keenetic.com/hc/ru/articles/214471425-Настройка-туннеля-IPSec-VPN-между-интернет-центром-и-компьютером-с-ОС-Windows


VPN поднимается, подключение проходит, компьютер пингуют друг друга, работают сетевые шары, но в steam компьютеры друг друга не видят, хотя через hmachi  - работает.
Вот что пишут в инструкции steam'а

Цитата

Какие сетевые порты использует трансляция?

Трансляция использует UDP-порты 27031 и 27036, а так же TCP-порты 27036 и 27037. Убедитесь, что брандмауэр позволяет Steam присоединиться к этим портам.

Компьютеры «не видят» друг друга.

Убедитесь, что они подключены к одной и той же сети и используют UDP порт 27036, который используется для стандартного протокола обнаружения. Если другая программа присоединилась к порту, пожалуйста, сообщите о ней в группе по обсуждению неполадок.

Пробовал пробросить порты на роутерах, но делу это не помогло.
 

Проблема в настройках? Или в ТП-линке?
Можно ли что-то сделать?

   

 

порты_кинетк.png

порты_тплинк.jpg

Link to comment
Share on other sites

Цитата

Компьютеры «не видят» друг друга.

Убедитесь, что они подключены к одной и той же сети

По умолчанию сеть сервера pptp отлична от домашней. Укажите в его настройках диапазон адресов из домашней сети.

Link to comment
Share on other sites

У меня домашняя трансляция Steam работает через EoIP-туннель между двумя кинетиками. Вы уверены, что Вам нужен именно VPN? По сути требуется общий L2 сегмент, EoIP - как раз то, что нужно.

Link to comment
Share on other sites

Спасибо за ответы.

Адреса для ppp выделял из основной сети - не помогает.
Опцию "Транслировать адреса клиентов (NAT) " в свойствх ppp включал-отключал - не помогает

51 минуту назад, Himmler сказал:

У меня домашняя трансляция Steam работает через EoIP-туннель между двумя кинетиками. Вы уверены, что Вам нужен именно VPN? По сути требуется общий L2 сегмент, EoIP - как раз то, что нужно. 

Думаю, это бы проблему однозначно решило но, к сожалению, второй роутер не кинетик, он так не умеет.
Но всё равно спасибо, оставлю замену оборудования как крайний вариант, если ничего не поможет.
Я правильно понимаю, что для EoIP туннеля белый адрес необходим для обоих сторон и KeenDNS тут не поможет?

Я не то, чтобы уверен, что именно VPN мне нужен, просто в примерах выше народ пишет, что у них таким образом работает трансляция.

Link to comment
Share on other sites

28 минут назад, Иван Кантуров сказал:

Я правильно понимаю, что для EoIP туннеля белый адрес необходим для обоих сторон и KeenDNS тут не поможет?
 

Нет, только для сервера. 

Возможно нужен L2, но тогда непонятно как у мужика на pptp работает. 

Для L2 необязательно eoip, можно и openvpn tap. Другое дело что скорость на вашей Ультре будет небольшой и транслировать в высоком качестве не получится. Но попробуйте для начала tap. Да и для eoip вам придётся покупать Гигу, т.к. на младших моделях скорость в районе 20 мегабит. Либо искать на Авито старые модели с аппаратным Ipsec.

Может быть оставить hamachi и чёрт с ним?

Link to comment
Share on other sites

У меня один из самых "чахлых" Lite III rev A. EoIP без шифрования выдаёт 86-88 мбит/с.

Если не опасаетесь гонять нешифрованный трафик - можно взять keenetic start 2 рублей за 1200.

Адрес у меня белый динамический, привязан к KeenDNS. С серым, насколько знаю, EoIP не поднимется.

Для вменяемого качества трансляции нужно около 40 мбит/с для fullHD с h264. Если между машинами пинг более 20 мс - то задержка от ввода до отображения кадра будет около 50-60 мсек, в динамичные шутеры уже некомфортно.

У меня между машинами пинг через туннель 7 мсек, задержка от ввода до отображения кадра около 40 мсек - вполне играбельно.

Link to comment
Share on other sites

18 минут назад, Himmler сказал:

У меня один из самых "чахлых" Lite III rev A. EoIP без шифрования выдаёт 86-88 мбит/с.

Если не опасаетесь гонять нешифрованный трафик - можно взять keenetic start 2 рублей за 1200.

А гостей в домашней сетке не опасаетесь? Боты сканируют сеть круглосуточно и ваш открытый туннель как приглашение в гости. Такой подход на любителя.

Link to comment
Share on other sites

1 минуту назад, Himmler сказал:

Да, безопасности никакой. Так что я заранее озаботился тем, чтобы в домашней сети не было ничего ценного.

Оригинальный взгляд на безопасность. )))

Link to comment
Share on other sites

Ну, если сарай пустой, то дверь можно в принципе не закрывать.

К тому же, для поднятия туннеля, нужно чтобы адрес назначения на обоих концах был верный. А задаётся он из настроек кинетика. Так что для подключения нужно либо угадать и заиметь тот адрес, который я прописал в настройках, либо эти настройки изменить.

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

Edited by Himmler
Link to comment
Share on other sites

3 часа назад, Кинетиковод сказал:

Возможно нужен L2, но тогда непонятно как у мужика на pptp работает.

Да уж, хотелось бы знать. Возможно, есть какое-то простое решение, открыть что-нибудь в фаерволе,например, а я просто не в ту сторону думаю :)

3 часа назад, Кинетиковод сказал:

Для L2 необязательно eoip, можно и openvpn tap. Другое дело что скорость на вашей Ультре будет небольшой и транслировать в высоком качестве не получится. Но попробуйте для начала tap. Да и для eoip вам придётся покупать Гигу, т.к. на младших моделях скорость в районе 20 мегабит. Либо искать на Авито старые модели с аппаратным Ipsec.

Можете дать ссылку на инструкцию по настройке openvpn tap на кинетике?

 

3 часа назад, Himmler сказал:

У меня один из самых "чахлых" Lite III rev A. EoIP без шифрования выдаёт 86-88 мбит/с.
Адрес у меня белый динамический, привязан к KeenDNS. С серым, насколько знаю, EoIP не поднимется.
Для вменяемого качества трансляции нужно около 40 мбит/с для fullHD с h264. Если между машинами пинг более 20 мс - то задержка от ввода до отображения кадра будет около 50-60 мсек, в динамичные шутеры уже некомфортно.
У меня между машинами пинг через туннель 7 мсек, задержка от ввода до отображения кадра около 40 мсек - вполне играбельно.

Спасибо за сведения.

3 часа назад, Кинетиковод сказал:

Может быть оставить hamachi и чёрт с ним? 

Похоже,этим всё и закончится :)
В целом-то всё работает, просто подумалось, что через свой роутер должно бегать пошустрее, чем через сервера hamachi.

Link to comment
Share on other sites

Насколько я знаю, сервер hamachi используется при установке соединения, сам же трафик через сервер не проходит, а идёт напрямую от клиента 1 до клиента 2.

Link to comment
Share on other sites

Разве что на каждом из клиентов работает софтварное шифрование, которое сколько-то добавляет к задержке. Очень вероятно, что менее 1 мсек.

Link to comment
Share on other sites

22 минуты назад, Иван Кантуров сказал:

Да уж, хотелось бы знать. Возможно, есть какое-то простое решение, открыть что-нибудь в фаерволе,например, а я просто не в ту сторону думаю :)

При прямом подключении с ПК вам может мешать только файрвол Винды. Надеюсь вы его давно отключили.

22 минуты назад, Иван Кантуров сказал:

Можете дать ссылку на инструкцию по настройке openvpn tap на кинетике?

https://help.keenetic.com/hc/ru/articles/360000001689-Возможно-ли-создание-OpenVPN-сервера-типа-TAP-  Думаю он вам не подходит из-за низкой скорости, а так штука хорошая. У вас наверное будет мегабит 12.

22 минуты назад, Иван Кантуров сказал:

В целом-то всё работает, просто подумалось, что через свой роутер должно бегать пошустрее, чем через сервера hamachi.

Там peer-to-peer. Сервера только для нахождения друг друга. Можно строить сети по схеме компьютер-компьютер, а можно роутер-роутер. В вашем случае смена схемы наверное нецелесообразна.

Edited by Кинетиковод
Link to comment
Share on other sites

Да, фаервол ОС отключен. За ссылку спасибо.
Получается, что hamachi лучше своего туннеля в моём случае, так как даёт боле широкий канал, и скорее всего, такой же по скорости.
От добра добра смысла искать нет, если только вдруг не удастся pptp настроить.

Himmler, интересно, если на вашем железе использовать хамачи вместо туннеля, пинг поменяется? Не интересно попробовать?

Link to comment
Share on other sites

У меня на одной стороне Pentium 4 3,4 Ггц на s478. Даже если там очень-очень оптимизированное шифрование со всякими SSE, для канала в 40 мегабит мой ЦП будет добавлять миллисекунд 10, а может и более. Потому как старичку 15 лет и он примерно в 10 раз менее производителен, чем i7 2700K (который тоже уже немолод)

Так что в моём случае время точно увеличится, и заметно. Потому как мой случай близкий к предельному (с точки зрения производительности).

Link to comment
Share on other sites

3 минуты назад, Иван Кантуров сказал:

Himmler, интересно, если на вашем железе использовать хамачи вместо туннеля, пинг поменяется? Не интересно попробовать?

Так вы попробуйте OpenVPN. Качество трансляции сделайте минимальным, чтобы скорости OpenVPN хватало и оцените отклик. Если он улучшится, значит переход на схему роутер-роутер будет оправдан, а Хамачи стало быть вносит существенные задержки. Если отклик не изменится, то можете не суетиться.

Link to comment
Share on other sites

3 минуты назад, Himmler сказал:

У меня на одной стороне Pentium 4 3,4 Ггц на s478.

Как он умудряется воспроизводить поток h.264? Или битрейт минимальный? Тогда зачем eoip без шифрования? А поток 40 мегабит старый пень не потянет. Видух с аппаратным h.264 под agp выпустили мизер. Или у вас именно такая?

Link to comment
Share on other sites

2 часа назад, Himmler сказал:

У меня на одной стороне Pentium 4 3,4 Ггц на s478. Даже если там очень-очень оптимизированное шифрование со всякими SSE, для канала в 40 мегабит мой ЦП будет добавлять миллисекунд 10, а может и более. Потому как старичку 15 лет и он примерно в 10 раз менее производителен, чем i7 2700K (который тоже уже немолод)

Так что в моём случае время точно увеличится, и заметно. Потому как мой случай близкий к предельному (с точки зрения производительности).

Ловко вы вдохнули жизнь в старое железо!
 

2 часа назад, Кинетиковод сказал:

Так вы попробуйте OpenVPN. Качество трансляции сделайте минимальным, чтобы скорости OpenVPN хватало и оцените отклик. Если он улучшится, значит переход на схему роутер-роутер будет оправдан, а Хамачи стало быть вносит существенные задержки. Если отклик не изменится, то можете не суетиться.

Попробую проверить.

Link to comment
Share on other sites

Для начала - забудьте про OpenVPN. Напрочь, на любом роутере.

Steam осуществляет поиск ПК в рамках одного Broadcast-сегмента. Однако, с не очень давнего времени в консоли десктопного клиента присутствует команда connect_remote, а в Steam Link и приложении Steam Link на Android прямо в интерфейсе есть возможность прописать IP.

Поэтому - организовываем обычный туннель L3, в случае с тплинком это PPTP, и подключаемся по IP. Никаких пробросов портов, ничего не нужно, должно штатно заработать. Консоль открывается либо запуском steam.exe -console либо выполнением steam://open/console в браузере, порт указывать 27036.

В идеале - заменить второй роутер на что-нибудь с оффлоадом IPsec (б/у кинетики на RT6856, или любой современный роутер с MT7621 и адекватной прошивкой с поддержкой аппаратного оффлоада IPsec), и поднять IPsec-туннель любого вида.

 

7 часов назад, Himmler сказал:

Если не опасаетесь гонять нешифрованный трафик - можно взять keenetic start 2 рублей за 1200.

Через Start II можно вполне и по IPsec гонять, крипточип там есть, хоть и странный, но ~25mbit/s вполне тянет стабильно, если поэкспериментировать- можно и шустрее получить.

 

В 18.10.2018 в 09:38, Иван Кантуров сказал:

Keenetik Ultra Rev.A NDMS v2.06(AAGJ.0)C3

Обновитесь хотя бы до 2.11 legacy, бодрее будет

 

P.S.: стримил Ultra II -> Giga II через объединение EoIP over IPsec еще в начале 2017, когда не было возможности подключиться по IP... Последнее развлечение - стримить через LTE на смартфон.

Edited by KorDen
Link to comment
Share on other sites

13 часа назад, KorDen сказал:

Steam осуществляет поиск ПК в рамках одного Broadcast-сегмента. Однако, с не очень давнего времени в консоли десктопного клиента присутствует команда connect_remote, а в Steam Link и приложении Steam Link на Android прямо в интерфейсе есть возможность прописать IP.

Спасибо! Работает.
Трансляция заводится даже без туннеля, если пробросить порты, которые просит стим. Правда играть таким образом у меня не получилось, она запускается и тут же рвётся.
Через PPTP всё отлично.

Вот что получилось при отправке 100 пакетов:
Пинги с клиента (ПК на который идёт трансляция) до сервера (ПК с которого идёт трансляция)

Статистика Ping до роутера сервера:
Пакетов: отправлено = 100, получено = 100, потеряно = 0
(0% потерь)
Приблизительное время приема-передачи в мс:
Минимальное = 1мсек, Максимальное = 9 мсек, Среднее = 3 мсек

Статистика Ping до сервера через хамачи:
Пакетов: отправлено = 100, получено = 100, потеряно = 0
(0% потерь)
Приблизительное время приема-передачи в мс:
Минимальное = 2мсек, Максимальное = 11 мсек, Среднее = 3 мсек

Статистика Ping до сервера через PPTP-тоннель:
Пакетов: отправлено = 100, получено = 100, потеряно = 0
(0% потерь)
Приблизительное время приема-передачи в мс:
Минимальное = 2мсек, Максимальное = 7 мсек, Среднее = 2 мсек

Пока что особой разницы не видно, надо будет попробовать на 1000 пакетов.

20 часов назад, Himmler сказал:

задержка от ввода до отображения кадра около 40 мсек - вполне играбельно

А как это проверить? Чисто "на глаз" или есть какой-то софт?

P.S. Обновил прошивку на 2.13.C.0.0-4 по совету KorDen

Edited by Иван Кантуров
Link to comment
Share on other sites

В настройках трансляции можно включить отображение статистики. Расширенное отображение включается/выключается клавишей F6 во время трансляции. Там указана задержка ввода, задержка отображения, текущий реальный битрейт и прочее.

Интересно, почему без туннеля клиенты находят друг друга, но трансляция не запускается? Пробовали в таком режиме пинговать пакетами более 1500 байт?

Edited by Himmler
Link to comment
Share on other sites

При прямом соединении я могу только роутер пинговать, для icmp вроде порты нельзя пробросить.
Есть вроде такой вариант, но я не уверен, что это сработает на icmp. Да и выглядит перебором.

Вот результаты до роутера:

Статистика Ping -n 100:
    Пакетов: отправлено = 100, получено = 100, потеряно = 0
    (0% потерь)
Приблизительное время приема-передачи в мс:
    Минимальное = 1мсек, Максимальное = 7 мсек, Среднее = 3 мсек

Статистика Ping -l 1500 -n 100:
    Пакетов: отправлено = 100, получено = 100, потеряно = 0
    (0% потерь)
Приблизительное время приема-передачи в мс:
    Минимальное = 3мсек, Максимальное = 21 мсек, Среднее = 14 мсек

Статистика Ping -l 2500 -n 100:
    Пакетов: отправлено = 100, получено = 100, потеряно = 0
    (0% потерь)
Приблизительное время приема-передачи в мс:
    Минимальное = 3мсек, Максимальное = 24 мсек, Среднее = 19 мсек

Edited by Иван Кантуров
Link to comment
Share on other sites

Вот результаты пинга сервера через тоннель с клиента

Статистика Ping -n 100:
    Пакетов: отправлено = 100, получено = 100, потеряно = 0
    (0% потерь)
Приблизительное время приема-передачи в мс:
    Минимальное = 2мсек, Максимальное = 10 мсек, Среднее = 4 мсек

Статистика Ping -l 1500 -n 100:
    Пакетов: отправлено = 100, получено = 99, потеряно = 1
    (1% потерь)
Приблизительное время приема-передачи в мс:
    Минимальное = 3мсек, Максимальное = 26 мсек, Среднее = 17 мсек

Статистика Ping -l 2500 -n 100:
    Пакетов: отправлено = 100, получено = 100, потеряно = 0
    (0% потерь)
Приблизительное время приема-передачи в мс:
    Минимальное = 15мсек, Максимальное = 28 мсек, Среднее = 21 мсек

разница небольшая, но есть

Link to comment
Share on other sites

У Вас как-то очень резко растёт среднее время задержки с ростом размера пакета. На моём канале для icmp-пакета с "нагрузкой" в 32 байта среднее время 7 мсек, при 65000 байтах - 22 мсек. А у вас уже на 2500 байт такая задержка, хотя на мелких пакетах она меньше моей.

Ну это не очень относится к делу, а вот логи трансляции может что-то и скажут, почему же трансляция не стартует.

Они лежат в C:\Program Files (x86)\Steam\logs, файлы:

streaming_log.txt

StreamVideoTrace.txt

StreamAudioTrace.txt

 

Возможно, там будет что-то явно указано, что именно не удалось клиенту steam.

Edited by Himmler
Link to comment
Share on other sites

  • 4 weeks later...

Собственно, спустя месяц полёт отличный.
Спасибо всем участникам!
До тестов подключения без VPN рука так и не дошли, недаром говорят, что лучшее  -враг хорошего :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...