Меню Рубрики

Маршрутизация в mac os x

О маршрутизации простыми словами. Как посмотреть, добавить или удалить маршрут в macOS

Я давно заметил, что многих пользователей пугает само слово «маршрутизация». Да чего там говорить про обычных пользователей, когда даже админы (особенно те, кто кроме Windows ничего другого не видели) с трудом понимают что это такое.

И я сейчас не преувеличиваю. Иногда требуется прописать статический маршрут на клиенте, а не на роутере и мне приходилось объяснять не пользователю, а админу зачем это нужно, как это делается и в чём отличие от маршрута по умолчанию.

Мальчик сказал маме: “Я хочу кушать” и мама отправила его к папе.
Мальчик сказал папе: “Я хочу кушать” и папа отправил его назад к маме.
Мальчик сказал маме: “Я хочу кушать” и мама снова отправила его к папе.
Так мальчик бегал туда-обратно, пока не упал.
Что случилось с мальчиком? TTL кончился.

Скажете бессмысленный анекдот? Чтобы его понять нужно изучить как работают сети, а пока давайте объясню простыми словами что такое «маршрутизация» (routing), чтобы это слово вас больше не пугало.

Если вы когда-либо настраивали свой роутер или смотрели свойства подключения к сети, то наверняка видели что кроме адреса вашего компьютера, есть ещё адрес шлюза (ещё одно непонятное слово).

Всё просто. Интернет можно представить как разветвлённую дорожную сеть с кучей направлений. Каждая из дорог может привести куда угодно и не факт что нам туда вообще нужно. Так вот, ваш шлюз — это отправная точка во всемирную сеть, откуда вы начинаете свой путь и, в большинстве случаев, он становится для вас маршрутом по умолчанию.

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

Когда мы знаем точный маршрут следования (его ещё называют статическим), то можем сразу начать движение по нему, в противном случае используется маршрут по умолчанию, который как бы говорит: всё, что не знаешь, куда послать — шли сюда.

В каком случае может потребоваться указывать статический маршрут? Например, при использовании VPN-соединений, когда не желательно гонять весь трафик в защищённом канале. Но это уже выходит за рамки простого описания, да и про VPN я уже много рассказывал ранее. Кому интересно что это такое, можете почитать тут, а сейчас расскажу как управлять статическими маршрутами на примере macOS (если вы хотите узнать как управлять маршрутами в Windows и Linux, оставляйте комментарии и в одном из следующих постов я постараюсь изложить данную тему подробнее).

Как посмотреть, добавить или удалить маршрут в macOS

Чтобы посмотреть все действующие маршруты, отрываем Терминал и вводим следующую команду:

Добавить статичный маршрут можно следующей командой:

sudo route -n add 192.168.10.0/24 10.8.0.9

Здесь мы указали что для доступа к сети 192.168.10.0 с маской 255.255.255.0 (24) следует использовать шлюз 10.8.0.9.

Теперь удалим созданный статичный маршрут:

sudo route -n delete 192.168.10.0/24 10.8.0.9

Если считаете статью полезной,
не ленитесь ставить лайки и делиться с друзьями.

Источник

Маршрутизация в Mac OS при VPN подключении

Появилась как-то задача подключатся по VPN к рабочей сети, чтобы иметь доступ к внутренним ресурсам.
Средствами Мака это можно сделать создав VPN подключение и 2 варианта:
1. поставить галочку «Слать весь трафик через VPN подключение»
2. статически прописать статически route add -net 192.168.10.0/24 192.168.44.1, где 192.168.10.0/24 — сеть в которой находятся компьютеры на работе, 192.168.44.1 VPN шлюз к которому я подключаюсб.

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

Итак задачу я решил следующим образом:
создал скрипт: touch /etc/ppp/ip-up
дал ему прав на исполнение: chmod +x /etc/ppp/ip-up
создал файл для логов: touch /tmp/ppp.log

Содержимое скрипта:
#!/bin/sh
VPNWORK=»192.168.44.1″; #обьявляем переменную (например по названию VPN подключения)
if [ $IPREMOTE = $VPNWORK ] #проверяем, если совпадает добавляем маршрут
then
/sbin/route -n add -net 192.168.10.0/24 $IPREMOTE > /tmp/ppp.log 2>&1
fi

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

При необходимости добавлять DNS сервер можно дописать текст между then и fi:
echo «nameserver 4.2.2.1» > /etc/resolv.conf
Вместо 4.2.2.1 укажите свой основной DNS и второй записью рабочий.

Но при этом после отключения нам надо вернуть предыдущий DNS конфиг на место, для этого создаем: touch /etc/ppp/ip-down && chmod +x /etc/ppp/ip-down

Перед началом работы делаем бекап:
cp /etc/resolv.conf /etc/resolv.conf_original

и добавляем в скрипт /etc/ppp/ip-down:
#!/bin/sh
cat /etc/resolv.conf_original > /etc/resolv.conf

Собственно всё. При каждом подключении VPN прописывается маршрут, работаете сколько надо, после отключения удаляется, при этом у вас не будет загвоздок с DNS.

Источник

Просмотр таблиц маршрутизации и статистики с помощью Сетевой утилиты на Mac

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

Предоставляется возможность получения сводок для протоколов TCP, UDP, IP, ICMP, IGMP, IPSEC, IP6, ICMP6, IPSEC6 и PFKEY.

На Mac откройте приложение «Сетевая утилита» , расположенное в папке «Система/Библиотека/CoreServices/Программы».

Нажмите «Netstat», выберите тип информации, которую Вы хотите просмотреть, и нажмите кнопку «Netstat».

Чтобы интерпретировать результаты и узнать, как можно использовать команду netstat для получения других отчетов, откройте приложение «Терминал» (расположено в папке «Программы/Утилиты»), затем введите netstat в командной строке.

Источник

Маршрутизация в mac os x

Anton » 04 фев 2010, 21:38

Маршрутизация в Mac OS X :

Запускаем Terminal (находится в Applications/System Utilities)

(маршрутизация прописывается под root’ом . если нет root-аккаунта — нужно воспользоваться командой sudo, которая, собственно и выполняет root’овые действия)

в строке терминала вводим:

Код: Выделить всё sudo route add -net 192.168.0.0 -netmask 255.255.0.0 [i]ваш_шлюз[/i]sudo route add -net 213.138.213.0 -netmask 255.255.255.0 [i]ваш_шлюз[/i]sudo route add -net 80.237.99.224 -netmask 255.255.255.248 [i]ваш_шлюз[/i]

(вместо слова шлюз вписываем ip-адрес шлюза вашей сети)

жмем энтер, после этого потребуется ввести ваш юзерский пароль
после чего прописываем остальные маршруты, пароль вводить в ближайшие 5 минут не потребуется.

Код: Выделить всё sudo route add -net 192.168.0.0 -netmask 255.255.0.0 [i]ваш_шлюз[/i]sudo route add -net 213.138.213.0 -netmask 255.255.255.0 [i]ваш_шлюз[/i]sudo route add -net 80.237.99.224 -netmask 255.255.255.248 [i]ваш_шлюз[/i]

(вместо слова шлюз вписываем ip-адрес шлюза вашей сети)

теперь маршрутизация прописана, но, к сожалению, до первой перезагрузки компьютера

С этим мириться не следует, поэтому заставим ее прописываться автоматически:

Запускаем Script Editor (находится в Applications/System Utilities/AppleScript)

Копируем в окно редактора этот нехитрый скрипт:

Код: Выделить всё set LF to ASCII character 10
sudo route add -net 213.138.213.0 -netmask 255.255.255.0 [i]ваш_шлюз[/i]sudo route add -net 80.237.99.224 -netmask 255.255.255.248 [i]ваш_шлюз[/i]set yourScr1 to «sudo route add -net 192.168.0.0 -netmask 255.255.0.0 [i]ваш_шлюз[/i]»
set yourScr2 to «sudo route add -net 213.138.213.0 -netmask 255.255.255.0 [i]ваш_шлюз[/i]»
set yourScr3 to «sudo route add -net 80.237.99.224 -netmask 255.255.255.248 [i]ваш_шлюз[/i]»
set passwordStr to «ваш юзерский пароль» as string
set sudoScr to «sudo » & yourScr1 & «; sudo » & yourScr2 & «; sudo » & yourScr3 & » && sudo -k»
do shell script «sudo -v» & «

разумеется,вместо слова шлюз вписываем ip-адрес шлюза вашей сети,
а вместо ваш юзерский пароль — ваш настоящий пароль

теперь можно нажать на кнопку Run и проверить, все-ли вы правильно сделали.
если нет никаких ошибок и маршрут прописан — сохраняем этот скрипт. в текстовом
виде его хранить как-бы несекьюрно, т.к. он содержит ваш пароль, поэтому сохраним его как application — это вполне нормально.

Кладем этот скрипт куда подальше, открываем System Preferences, в разделе System открываем Accounts, выбираем себя (и если есть и необходимо — других юзеров), переходим в закладку Startup Items, и добавляем туда готовый скрипт (можно просто перетащить мышкой), и ставим напротив в чекбоксе галку, чтобы не мозолил глаза в доке при исполнении.

Теперь при каждом стартапе системы маршрутизация будет прописана автоматически

Еще есть способ — можно в настройках Network, а в частности в Network port configurations, наклонировать Built-in Ethernet в 5 экземплярах с помощью кнопки Duplicate, и в каждом из пяти прописать ip и шлюзы . я не пробовал.

А самый лучший способ — обзавестить роутером с поддержкой маршрутизации, дабы каждый раз
не поднимать vpn-соединение с помощью Internet connect, что всем и рекомендую.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Майнинг криптовалюты на mac os
  • Майнинг для mac os x
  • Майнинг биткоинов mac os
  • Майнер под mac os
  • Майнер для mac os