Как стать автором
Обновить
3
0
George @soloweb

Modern VPN — ForestVPN.com / I am the Founder

Отправить сообщение

Блокировать современные протоколы, сложнее чем кажется. Сегодня наше решение работает, ну и скорее всего через х месяцев оно будет еще лучше работать... Будем стараться, чтобы нас было сложно заблокировать.

Клиент мы пока не собираемся опенсорсить, но например есть такая интересная штука https://github.com/suquant/wgrest может работать даже на роутерах...

Привет, я Фаундер ForestVPN.com/
Мы разрабатываем AI алгоритм, который позволяет VPN траффик завернуть во что-то интересное.

Мы бы выделили несколько подходов в зависимости от того что и где требуется:
- заворачиваем траффик и делаем его похожим на ssh
- заворачиваем траффик и делаем его похожим на html
- заворачиваем траффик и делаем его похожим на h264
- заворачиваем траффик и делаем его похожим на TLS
- обучаем AI на траффике который проходит на одном из интерфейсов или кастомном датасете и заворачиваем траффик и делаем его похожим на него.

Разные DPI в разных странах работают по-разному и в зависимости от условий может работать какой-то конкретный алгоритм, универсальных решений нет. Да, кстати ForestVPN умеет работать с Китайским фаерволом, более того она там работает.

Мы делаем решение на базе протокола WireGuard.

ForestVPN.com уже давно использует P2P технологию и обфускацию траффика между пирами :)

Ну и weak и unowned работает только для class типов
Если планируется передача по ссылке чего-то, то лучше оформлять это дело в виде класса.
Где пример с whatToDo, там можно использовать слабую связку аля {[weak self] () in println("\(self!.myvar)")}

По поводу передачи по ссылке страктов и массивов, можно их передавать в режиме ссылки, для этого достаточно указать inout, например так:
func myFunc(inout var persons: [PersonStruct]) {...}

Также если надо вернуть из функции ссылку то можно использовать UnsafeMutablePointer
Я у йоты наблюдал подмену сертификата и именно для github.com, было где-то недели 3-4 назад.
Проверял ip github.com:192.30.252.131, при этом этот ip в черном списке присутствует.
Провайдеры:
2kom: работает
nline: не работает
westcall: работает

А постоянные соединения поддерживаются в github.com/cocaine/cocaine-native-proxy?
Я про HTTP/1.1? Тогда можно было-бы через постоянные соединения поднять сервис с wsgi интерфейсом и через него гонять websocket
Или как-то возможно пробрасывать HTTP/1.1 через, к примеру, nginx?
А как дела обстоят с websocket в cocaine?
Т.к. это постоянные соединения, то наверное должна быть какая-то прокся которая грамотно могла бы разруливать соединения с end-point-ами, или как-то еще.
Согласен, это true-way, но к сожалению есть legacy код, либо рефакторить-разносить, либо как-то подружить.
Вариант с подружить гораздо интереснее :)
Это все понятно, но если приложение сложное и надо прогнать всю связку, тут придется попотеть.
Вот к примеру у django+celery можно поднимать командой инфраструктуру у себя на машине, вот если-бы такая возможность была, было бы гораздо проще.
Да вот к примеру я хочу написать приложение для кокаина которое работает с eliptics с postgresql и еще с парачку сервисами из cocaine вот как это все дело отлаживать в dev окружении.
Понятно что писать код, пушить его в «dev» инфраструктуру и отлаживать там не очень удобно.
Ребята спасибо за пост и за то что делаете вообще.
Очень хочется прочитать про dev окружение и отладку в нем:
Как это все поднимать на dev тачке?
как оперативно и без геммороя отлаживать?
Нажми и удерживай кнопку reset в течении 15 секунд.
На официальном сайте написанна инструкция (http://www.yota.ru/support/#firmware_800)
Спасибо за статью, мало встретишь людей которые могут поделиться опытом онлайн продаж в России.
Спасибо за пост,
А не использовали ли вы WSS (WebSocketSecure) с поддержкой SSL
У меня проблемы с самоподписанным сертификатом в Safari он там выдает странную ошибку и переходит в режим XHR.

Я настраивал через Nginx Tcp proxy это дело, т.е. Nginx у меня занимался SSL шифрованием и после проксированием к tornadio2

Спасибо за статью.
Ваш подход скорее функциональный, а мы же придерживаемся ООП со всеми плющками (переопределение, наследование ...), кстати onPHP один из не многих фреймворков, где с самого начала идет жесткая привязка к ООП, т.е вы не встретите часть кода функционального а часть ООП, мы старались с ссамого начала избежать такой путаницы.
При сравнении мы используем целочисленное значение даты и времени с кодом можно ознкомится ниже по ссылке
github.com/onPHP/onphp-framework/blob/master/core/Base/Date.class.php#L109
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Дубаи, О.А.Э.
Дата рождения
Зарегистрирован
Активность