Не работают эмуляторы локальной сети

Эмуляция сетевых проблем с помощью WANem

Что такое WANem?

Это дистрибутив на основе knoppix, который позволяет эмулировать различные условия сетевого подключения клиентов. В первую очередь, это полезно для тестирования и отладки приложений, которым предстоит работать в не-пойми-каких условиях без физического погружения в эти самые условия.
Правила для работы можно создавать как вручную, так и через более-менее удобный web-интерфейс.

Как применять WANem?

Взять любую систему виртуализации и загрузить в ней LiveCD. Или, если вы используете решения VMWare — скачать готовую виртуальную машину. В дальнейшем я буду исходить из загрузки с LiveCD.

Подготовка WANem
Проверка работоспособности

Внутри себя WANem оперирует правилами, которые можно задавать явно в Advanced Mode, или по-простому выбирать из доступных в Basic Mode. Самый простой сценарий применения — включить режим, скажем ISDN 128 Kbps и задержку в 500 миллисекунд. После сохранения этих настроек нужно скомандовать машине, на которой установлено тестовое приложение, направлять весь свой трафик через WANem.

  • Windows: route add 0.0.0.0 mask 0.0.0.0 WANemIPaddress
  • Debian: route add default gw WANemIPaddress eth0
  • Всякие другие ОС: http://tinyurl.com/4yovdph

После этого нехитрого действия достаточно сделать traceroute от тестовой машины до внешнего мира и убедиться, что первый хоп — это IP виртуалки с WANem и что задержка пакетов ±совпадает с заданной в настройках.

Тонкая настройка

Убедившись с помощью Basic Mode, что наша тестовая станция заворачивает весь сетевой трафик через эмулятор, можно переходить к более тонкой настройке. В первую очередь, стоит обратить внимание на обширные настройки случайного распределения задержек, ошибок и патерь покетов потерь пакетов. Очередной небольшой шажок к реалистичности эмуляции.
Заранее расшифрую самые непонятные опции:

  • MTTF — среднее время до возникновения ошибки
  • MTTR — среднее время до восстановления после ошибки
  • Jitter — в контексте IP-сетей термин детально раскрыт в RFC 3393, а вкратце — это разница (в миллисекундах) между задержкой доставки пары пакетов
Читайте также:  Не надо работать над собой

Например можно задать параметры пропадания и восстановления связи, можно сэмулировать наличие соединения но непрохождение пакетов с данными, потерю или повреждение % пакетов.
При необходимости WANem может работать с несколькими сетевыми интерфейсами одновременно (создавая для них разные правила), что позволяет реализовать самую изощренную сетевую конфигурацию.

Альтернативы WANem

Мне известен платный продукт для Windows, под названием SoftPerfect Connection Emulator ($99/$149).
UPD: Для OS X goshakkk_reborn рекомендует Network Link Conditioner из XCode.
UPD: Для Windows x1shn1k подсказал также TMnetSim Network Simulator (freeware, есть версии ×32 и ×64)

Выводы

Отличный, достаточно простой и эффективный инструмент. Мне лично немного не хватает логирования на стороне WANem, но подозреваю, что это решается third-party утилитами, с которыми еще предстоит разобраться.

Вот пара примеров профилей, которые мы использовали для тестов: CDMA EV-DO rev.A, EDGE.

Официальный сайт: wanem.sourceforge.net, дистрибутив

400мб
Последняя версия: 2.3, 15.03.2011

Источник

Объединяем свои устройства через интернет в одну сеть (VPN для самых маленьких, в картинках)

Lightsail AWS — о нем пойдет речь в данной статье.

Подобных обзоров «как создать свой VPN» крайне много, но я так и не нашёл простого решения для новичка, с поддержкой создания полноценной локальной сети между двух и более клиентов с серым IP, находящимися за NAT.

Данное руководство я отношу к уровню подготовки «user+»: пользователь должен но не обязан знать что хочет получить, уверенно держит в руке мышь и видел командную строку в фильмах про хакеров.

Хочу обратить внимание начинающих хакеров: если вы взломаете пентагон с данного IP, скорее всего, ваш провайдер (Amazon в данном случае) сдаст вас «с потрохами» и от суровых людей с паяльником в руках спасения не будет.

ежемесячный платеж 350 рублей

Ежемесячный платёж 350 рублей, но вы можете сэкономить и не покупать выделенный IP у своего провайдера.

Шаг 1 — регистрация на AWS

Собственно проходим по ссылке и регистрируемся lightsail.aws.amazon.com

окно регистрации AWS

Номер телефона и банковскую карту указываем свою, может придётся пройти проверку по телефону (звонит робот), мне не пришлось.

(дополнительно) для доступа по SSH нужно получить отдельный ключ

делается один раз — для учётной записи

Шаг 2 — создаём виртуальный сервер

Мой выбор региона — Ирландия (Дублин), если нужна максимальная скорость — Германия (Франкфурт).

выбираем регион выбираем операционную систему выбираем тип сервера (я рекомендую самый дешевый) 1TB трафика в месяц должно хватить

Теперь резервируем выделенный IP4 адрес, IP6 — закрепляется автоматом при создании виртуального сервера (его поменять нельзя).

резервируем статический внешний IP

Получив IP4 адрес, сразу закрепляем его за нашим виртуальным сервером.

закрепляем IP4 за нашим виртуальным сервером нажимаем на «Home» и возвращаемся на главный экран

Здесь важный момент (его можно сделать как до настройки сервера, так и позже). Рядом с кнопкой вызова терминала (выделена синим квадратом) нажимаем 3 точки, выбираем Manage затем Networking.

всплывающее меню прописываем входящие порты (по умолчанию 22, 80)

Открываем входящие порты для нашего сервера, добавлю только что 2012 выбран для shadowsocks.

Шаг 3.1 — настройка сервера (AWS)

Запускаем терминал и обновляем систему и устанавливаем пакеты (копируем построчно, нажимая enter и отвечая «y«).

терминал откроется в окне браузера ход выполнения

Я не осилил текстовый редактор vi, поэтому установим более простой вариант 🙂

Удаляем все строки несколько раз нажимаем ctrl+k и добавляем, где 12345 — ваш пароль для подключения к shadowsocks (лучше заменить).

Сохраняем и выходим ctrl+x, на вопрос о сохранении отвечаем «y«.

редактор «nano» обязательно перезагружаем сервер

Перезагружаем сервер: пишем в консоли reboot и нажимаем enter.

Шаг 3.2 — настройка сервера (Windows)

Скачиваем SoftEther VPN Client для Windows www.softether.org, устанавливаем оба приложения из списка во время установки.

официальный сайт SoftEther

После установки запускаем SoftEther VPN Server Manager.

создаем новое подключение создаем подключение к нашему удаленному серверу для создание центрального шлюза (для объединения наших сетей) включаем Site-to-site VPN можете поменять имя DDNS (а можем и подключаться по IP) включаем IPsec и L2TP (для совместимости со всем зоопарком устройств) VPN Azure по желанию для пользователя рекомендую оставить авторизацию по паролю больше ничего настраивать ненужно

В главном окне нажимаем «Encryption and Network» Выбираем шифрование для VPN подключений и скачиваем сертификат

главное окно устанавливаем шифрование скачиваем сертификат выбираем тип сертификата сохраняем сертификат включаем NAT нажимаем Enable SecureNAT

На этом настройка сервера полностью завершена, я рекомендую ещё раз перезагрузить свой удаленный сервер.

Шаг 4 — настройка клиента

Устанавливаем сертификат, сертификат нужен на всех устройствах для подключения VPN (Windows: только в «локальный компьютер», по другому не работает SSTP VPN).

Создаём подключение SSTP VPN (Пуск\Параметры\Сеть и Интернет\VPN).

дополнительно — интернет через VPN, локальная сеть без изменений

Панель управления\Все элементы панели управления\Сетевые подключения

Внимание: утечка DNS

Или SSL VPN (запускаем SoftEther VPN Client Manager).

вводим IP, имя пользователя и пароль, дополнительно «Advanced Settings» дополнительно — интернет через VPN, локальная сеть без изменений

Внимание: утечка DNS

Теперь, разные ПК подключённые к вашему VPN серверу, будут находится в одной сети.

Если вам нужен полный доступ между домашней подсетью и подсетью рабочего компьютера, вам понадобиться на рабочий и домашний компьютер установить SoftEther VPN Bridge.

SoftEther VPN Bridge

По уровню сложности это выходит за рамки данной статьи, если интересно — читайте здесь https://www.softethernet.ru/pr1.html

Бонус (shadowsocks)

Не всегда нужен полноценный VPN, иногда просто хочется безопасно посмотреть котиков в браузере. Для Windows скачиваем https://github.com/shadowsocks/shadowsocks-windows/releases

Shadowsocks Windows (не требует прав администратора)

В браузере Firefox скачиваем расширение FoxyProxy (так же и на Android), настройка: SOCKS5/127.0.0.1/1080

foxyproxy для Firefox, для Chrome — proxy-switchyomega

Для Android https://play.google.com/store/apps/details?id=com.github.shadowsocks выбираем только прокси (тогда не будет подниматься VPN канал).

Shadowsocks Android Shadowsocks скорость на провайдер МТС в Санкт-Петербург SSTP VPN (2 устройства в сети) скорость на провайдер МТС в Санкт-Петербурге

Почему Amazon? — самая низкая скорость, которая была — 10Mbps.

Почему FreeBSD? — SoftEther под него устанавливается менеджером пакетов, да и сама ОС потребляет меньше ресурсов и без того дохлого виртуального сервера.

Источник

Оцените статью