Dns vpn mac os x

Где найти настройки DNS в MacOS

Недавно передо мной встала задача отладить процесс резолва DNS имен в MacOS. Полноценного материала, о том как именно он происходит, я не нашел, пришлось собирать информацию самому.

Вот что удалось выяснить.

За задачи, связанные с DNS в macOS, отвечает демон по имени mDNSResponder. В его жизни встречались приключения — на его смену приходил демон discoveryd (Yosemite), который много что поломал и создал кучу проблем. Через год Apple опомнилась и вернула (El Capitan) проверенный mDNSResponder, что сразу починило около 300 багов и вернуло стабильность.

mDNSResponder является частью Bonjour — набора технологий нацеленных на работу устройства в сети без необходимости конфигурации, включает в себя поиск сервисов, автоназначение адреса и резолв имен. Именно Bonjour используется когда вы достаете свой iPhone и ищете Apple TV или принтер.

У Bonjour открытый исходный код, и у mDNSResponder соответственно тоже. Это упрощает задачу, если вам нужно докопаться до конечной истины и показать все что скрыто. В архиве уже есть готовые реализации под Windows, Posix и VxWorks.

Демон обрабатывает unicastDNS и multicastDNS. UnicastDNS — это обычный DNS к которому мы привыкли и знаем. MulticastDNS — это протокол для использования DNS в локальных сетях, не требующий сервера. Если устройству нужно кого-то найти — оно отправляет вопрос — «question» мультикаст пакетом и получает ответ от устройства с запрошенным именем (если оно конечно существует). Сам протокол подробно описан в одноименном RFC.

Именно особенностями MulticastDNS злоупотребляет Responder — софт для атак в локальной сети. После запуска он коварно начинает отвечать на все mDNS запросы, заманивая ничего не подозревающих жертв в свои лапы.

Это было лирическое отступление — а теперь к главному вопросу — как увидеть текущий DNS кеш и общий статус DNS настроек.

Итак, выполняем следующие шаги:

    В терминале пишем:

эта команда позволит нам увидеть вывод, иначе он будет спрятан под заглушкой private
Открываем console, выбираем наш девайс:

и в фильтре пишем mDNSResponder


Выполняем в терминале:

Открываем обратно console и получаем прекрасный вывод, который мы сейчас немного разберем:


Статус DNS настроек представляет из себя большое полотно, разделенное на секции. Наиболее интересные из них:

Cache — здесь непосредственно хранится DNS cache:

Содержимое файла /etc/hosts — на всякий случай:

Статистика по mDNS — дубликаты имен, количество пакетов, события интерфейсов:

Список сетевых интерфейсов:

Список DNS серверов:

Мир внутренних и внешних взаимодействий подсистем MacOS обширен и полон загадок. Работа с доменными именами — лишь его маленькая часть. Для дальнейшего чтения рекомендую:

  • Официальную документацию Apple
  • Блог malware исследователя и *OS энтузиаста Patrick Wardle
  • Сайт и книги исследователя и практика *OS Johnatan Levin

Источник

Настройка подключения VPN на Mac

Чтобы подключиться к сети VPN, необходимо ввести настройки конфигурации на панели «Сеть». Эти настройки включают адрес сервера VPN, имя учетной записи и другие параметры идентификации, такие как пароль или сертификат, полученные от сетевого администратора.

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

Читайте также:  Защитник windows заменяет антивирус

Импорт файла настроек VPN

На Mac выполните одно из следующих действий.

Дважды нажмите на файл, чтобы открыть настройки сети и автоматически импортировать настройки.

Выберите пункт меню «Apple»

> «Системные настройки», нажмите «Сеть», нажмите раскрывающееся меню «Действия» , затем выберите «Импортировать конфигурации». Выберите файл, затем нажмите «Импортировать».

Введите настройки VPN автоматически

На Mac выберите меню Apple

> «Системные настройки», затем нажмите «Сеть».

Нажмите кнопку «Добавить» в списке слева, нажмите всплывающее меню «Интерфейс», затем выберите «VPN».

Нажмите всплывающее меню «Тип VPN», затем выберите тип VPN-подключения, который Вы хотите настроить, в зависимости от сети, к которой Вы подключаете компьютер. Присвойте имя службе VPN, затем нажмите «Создать».

Протокол L2TP — это расширенная версия протокола PPTP, который используется интернет-провайдерами для поддержки VPN через Интернет.

Протокол IPSec (Internet Protocol Security) является набором протоколов безопасности.

IKEv2 — это протокол, который настраивает сопоставление безопасности в IPSec.

Введите адрес сервера и имя учетной записи для VPN-подключения.

Нажмите «Настройки аутентификации», затем введите информацию, полученную от администратора сети.

Если Вы получили соответствующие указания от администратора сети, нажмите «Дополнительно» и введите дополнительную информацию, такую как параметры сеанса, настройки TCP/IP, DNS-серверы и прокси.

Дополнительная информация, которую Вы можете ввести, зависит от типа настраиваемого VPN-подключения.

Нажмите «Применить», затем нажмите «ОК».

Выберите «Показывать статус VPN в строке меню», чтобы использовать значок статуса VPN для подключения к сети и переключения между службами VPN.

Для удаления конфигурации VPN выберите службу VPN в списке сетевых служб и нажмите кнопку «Удалить» .

Источник

Как превратить старый Mac в дешевый VPN-сервер


В мире существует много VPN-сервисов, работающих по подписке — за некоторую сумму денег вам в месяц предоставляется несколько гигабайт (а то и вообще безлимит) интернет-трафика через защищенное подключение, позволяющие даже в незащищенной сети передавать конфиденциальные данные (подробнее о VPN можно узнать из этой статьи). Как и со всеми подписками, сумма за год, которую нужно заплатить за VPN, становится уже достаточно внушительной — как минимум 40-50 долларов. Однако для тех, кто имеет у себя старый ненужный Mac, есть возможность единоразово заплатить 20 долларов и превратить Mac в личный VPN-сервер, который будет работать до тех пор, пока работает Mac.

Что вам понадобится

  1. Любой Mac, совместимый с OS X 10.11 El Capitan: весь список совместимых устройств можно посмотреть на сайте Apple.
  2. OS X Server — в случае с OS X это не операционная система, а всего лишь программа в App Store, которая стоит 20 долларов.
  3. Кабель Ethernet, роутер и подключение к интернету (желательно использовать обычный роутер, а не связку маршрутизатор+модем).

Шаг первый: подключение и настройка OS X Server

Для того, чтобы качество соединения было наилучшим, соедините ваш роутер и Mac Ethernet-кабелем (можно, конечно, использовать и Wi-Fi, но в старых Mac он медленный, да и пинг сильно вырастет). После этого обновите ваш Mac до OS X 10.11, если не сделали это раньше. Теперь нужно купить в App Store OS X Server и установить ее (так как это обычная программа, то все действия происходят в пару кликов).

Если ваш Mac не поддерживает OS X 10.11, но вы когда-то покупали себе OS X Server, то можно загрузить последнюю совместимую версию — как это сделать написано на сайте Apple. Однако в дальнейшем инструкция будет опираться именно на последнюю версию OS X, поэтому на более старых версиях некоторые шаги инструкции будут выполняться по-другому.

Читайте также:  Особенности операционной системы windows linux

Шаг второй: регистрируем динамический DNS-адрес

Для того, чтобы можно было воспользоваться VPN-сервером вне домашней сети, нужно закрепить за ним DNS-адрес. Если вы знаете свой способ, то этот шаг инструкции можно пропустить. Проще всего это сделать через сервис FreeDNS.

Зарегистрируйтесь в FreeDNS (вполне хватит бесплатного аккаунта) и подтвердите ваш адрес электронной почты.
Зайдите в вашу учетную запись и перейдите во вкладку Subdomains, после чего нажмите на кнопку Add a subdomain.
Введите имя поддомена (абсолютно любое, удобное вам), после чего нажмите кнопку Save. В итоге у вас должен быть создан поддомен — запишите его полное имя:


Все, теперь у вас есть постоянный адрес для VPN-сервера, который позволит вам подключаться к нему из любой точки мира.

Шаг третий: настройка переадресации портов в роутере

Для работы VPN в OS X Server нужно разрешить переадресацию портов в роутере. Процесс варьируется от роутера к роутеру, но общая схема такая:

  1. Нужно зайти на страницу настройки роутера через браузер — обычно это 192.168.1.1, однако может меняться от роутера к роутеру (обычно адрес написан на коробке с роутером, там же есть стандартный логин и пароль).
  2. Теперь нужно задать статический IP-адрес Mac в сети. Для этого заходим в Настройки — Сеть, выбираем Ethernet, переходим в расширенные настройки — TCP/IP и выбираем использование DHCP с вводом адреса вручную и вводим IP-адрес так, чтобы первые три числа совпадали с таковыми у роутера. То есть, к примеру, если адрес роутера — 192.168.1.1, то можно поставить адресом вашего Mac 192.168.1.105 (желательно поставить большую последнюю цифру, чтобы ваш VPN-сервер не мешал другим устройствам в сети).
  3. Заходим в роутере в раздел настройки переадресации портов (если вы не знаете, где он — ознакомьтесь с инструкцией к вашему роутеру). Для работы VPN в OS X Server требуется четыре открытых порта: UDP 500, UDP 1701, TCP 1723 и UDP 4500. Добавьте их так же, как на скриншоте ниже (нужно использовать IP-адрес своего Mac):


Сохраните изменения и выйдите из настроек роутера. Теперь DNS-сервер сможет получить доступ в интернет, а значит вы можете получить доступ к нему из любого места.

Шаг четвертый: настройка DNS-сервера

Переходим к основной части — нужно включить DNS-сервер на Mac с помощью OS X Server. Для этого:

  1. Запустите OS X Server на вашем Mac.
  2. Щелкните на имя вашего компьютера в меню слева.
  3. Нажмите «Редактировать имя хоста . » и «Далее» при появлении запроса.
  4. Нажмите «Интернет» и «Далее».
  5. В поле «Имя хоста» введите имя домена, которое вы зарегистрировали на втором шаге, затем нажмите «Готово».
  6. При появлении запроса нажмите «Настроить DNS» и дайте ему возможность автоматически запускать и настраивать DNS.

Автоматические настройки DNS-сервера должны подойти большинству людей, однако при желании их можно изменить под себя.

Шаг пятый: запуск VPN

Осталось всего лишь запустить VPN-сервер. Для этого:

  1. Перейдите в раздел VPN на боковой панели OS X Server.
  2. Убедитесь в том, что в настройках по умолчанию VPN-имя хоста совпадает с именем домена, введенном на четвертом шаге.
  3. Создайте пароль «Shared Secret» — он нужен будет для подключения устройств к вашему VPN-серверу.
  4. Зайдите в раздел «Адреса клиентов» и нажмите «Редактировать адреса». Это IP-адреса, которые ваш сервер будет давать устройствам при подключении к нему. По умолчанию сервер уже должен иметь IP-адрес, введенный на третьем шаге (если это не так — исправьте его).
  5. Переключите бегунок VPN на «Вкл».

Приблизительно через 10-20 секунд статус изменится на «Доступно» — это означает, что настройка прошла успешно. Теперь любое ваше устройство может подключиться к вашему VPN-серверу и безопасно выходить в интернет (для подключения используйте протокол L2TP).

Источник

Как разделить VPN трафик в MacOS

Предположим, вы разработчик и часть ресурсов (например база данных) находятся в корпоративной сети, доступ в которую осуществляется через VPN.

Если вы посмотрите на все доступные инструкции как настраивать VPN на Mac OS, то увидите что авторы говорят вам ставить галку «отправлять весь трафик через VPN», что приводит к тому, что (Капитан Очевидность) весь трафик идет через VPN, что в свою очередь накладывает все ограничения корпоративной сети (запрет на посещение отдельных ресурсов, закрытые порты и т.д.) или ограничения сервиса анонимизации (узкий канал, долгий ping и т.д.).

Возникает вопрос — нельзя ли через VPN пускать только определенный трафик, а весь остальной (основной) трафик пусть идет по обычному каналу без ограничений.

Делается это довольно просто.

Кратко пройдемся по настройке VPN соединения.

Нажимаем на «яблочко» в левом верхнем углу экрана и выбираем «Системные настройки».

Выбираем «Сеть»

Нажимаем на «плюсик» в списке сетевых соединений.

Выбираем «VPN»

Тип VPN (в моем случае это L2TP через IPSec)

Заполняем параметры соединения

Галку «Отправлять весь трафик через VPN» не ставим

Теперь нам надо узнать интерфейс через который идет VPN-трафик.

Запускаем ifconfig без подключенного VPN

Подключаем VPN и снова запускаем ifconfig

Видим что появился интерфейс ppp0

Теперь по умолчанию весь трафик идет по обычному соединению (не VPN).

Далее, мне нужно чтобы коннекты к моему серверу, расположенному по адресу 192.168.0.20 шли через VPN. Для этого нам нужно построить сетевой маршрут. Воспользуемся штатной unix-командой route.

Теперь весь трафик идет через мое обычное соединение, а трафик к корпоративному серверу идет через VPN.

Для удобства в файле

/.profile создаем алиасы на команду добавления маршрутов

Теперь чтобы поднять соединение, необходимо подключиться к VPN и выполнить команду server-vpn-up.

Альтернативный вариант, это создать файл /etc/ppp/ip-up, прописать в него [в моем случае]

и дать права на выполнение

После этого маршрут будет прописываться автоматически после соединения с VPN.

Какие могут встретиться подводные камни.

1. Может быть конфликт IP-адресов, если внутренняя и внешняя сеть используют одно адресное пространство (возможно я использую не правильный термин, поправьте в комментариях пожалуйста). Т.е. у вас и VPN и внутренняя домашняя сеть находятся в 192.168.0… В моем случае решением было перенастройка домашней сети на 10.0.1…

2. При подключении VPN автоматически ставился корпоративный DNS 192.168.0.7. И хотя весь трафик должен был идти вроде как не через VPN, все сайты переставали открываться. Решилось это добавлением Google-ового DNS 8.8.8.8 и поднятии его в самый верх.

Источник

Читайте также:  Windows 10 team fortress
Оцените статью