- Как удалить статические маршруты. Как добавить маршрут в Windows 10, 8, 7
- Просмотр маршрутов
- Удаление всех статических маршрутов:
- Добавление статического маршрута:
- Как удалённо очистить таблицу маршрутов
- OpenVPN на Android: прозрачное переключение между WiFi и «Мобильными данными» без разрыва соединений
- Как очистить таблицу маршрутизации из кеша в Linux
- Очистить таблицу маршрутизации с помощью команды ip
- Очистить определенный маршрут
- Очистить все маршруты
- Очистить кеш маршрутизации
- Отображение статистики из кеша маршрутизации
- Команда ROUTE — Обработка таблиц сетевых маршрутов.
- Примеры использования команды ROUTE
Как удалить статические маршруты. Как добавить маршрут в Windows 10, 8, 7
Маршруты — это сетевые установки, которые используются операционной системой для организации трифака и доступа к локальной сети и в Интернет. С помощью этой странички вы научитесь просматривать, удалять и добавлять маршруты на компьютере с ОС Windows от XP до 10. Все эти действия выполняются в командной строке или ее улучшенном и расширенном аналоге PowerShell.
Хочется также сказать о том, что если вы не уверены в своих знаниях, лучше не изменять данные настройки. Т.к. при неправильном использовании маршрутизации вы можете оставить ваш компьюетр без доступа к сети Интернет.
Просмотр маршрутов
Удаление всех статических маршрутов:
Добавление статического маршрута:
После того, как все маршруты стёрты, естественно пропадёт Интернет. Для того, чтобы он появился вновь, необходимо задать маршрут по умолчанию. Добавляем постоянный маршрут к шлюзу:
В Windows XP/2003 Server после этого появится Интернет. Но если у вас Windows 7/8.1/или 2008/2012 Server, необходимо также выполнить команды:
Как удалённо очистить таблицу маршрутов
Если вы хотите проделать все эти операции удалённо, вам понадобится программа NetAdapter Repair (подробнее). Дело в том, что после применения команды route -f соединение с сервером будет утрачено. А утилита NetAdapter Repair автоматически перезагрузит компьютер после очистки таблицы маршрутов. Для удалённой очистки необходимо проделать следующие действия:
1 Запустить утилиту NetAdapter Repair от имени Администратора.
2 Установить флажок возле пункта Clear ARP/Route Table.
3 Нажать кнопку Run All Selected:
После выполнения операции пойдёт обратный отсчёт времени и компьютер (сервер) перезагрузится автоматически:
Если что-то непонятно, спрашивайте в комментариях.
Источник
OpenVPN на Android: прозрачное переключение между WiFi и «Мобильными данными» без разрыва соединений
Здравствуйте, разрешите поделиться своим опытом.
Есть приложения критичные к разрывам связи, переподключение происходит мучительно и вообще не всегда. Поставил перед собой цель, сделать прыжки маршрутов и физических подключений прозрачными, что бы связь была постоянной и TCP коннект не рвался.
И поможет в этом старый, добрый и ламповый «openvpn». Но установка и настройка — тема давно избитая, трогать её, здесь не планируется.
Что нам нужно:
- Сервер Linux с постоянным IP (vps, vds, dedic или просто домашний)
- Openvpn на сервере и клиенте, настроенные на работу по UDP.
- iproute2 — собственно для фокуса нужна работающая утилита ip на Android.
- Так же потребуется внести изменения в исходный код openvpn-settings c последующий сборкой apk.
Приступим
Начнем с правки «openvpn-settings». Суть в том, что при любом изменении в сетевой конфигурации нативному демону openvpn посылается команда SIGUSR1, что заставляет его отключаться и подключаться по новой. Для наших целей это вред, но нам все равно желательно иметь возможность выполнять некоторые действия при изменении сетевой конфигурации.
Кто-то скажет, но ведь есть persist-tun. Отвечаю, работает не так, как хочется, openvpn дергает скрипты «лежать-вставать» каждый раз, когда приходит SIGUSR1. И в принципе отличить по имеющимся переменным перезапуск от старта, без выкрутасов почти не возможно. Это подрывает всю затею, а хочется просто и надежно.
Поэтому мы заменим отправку SIGUSR1 на вызов shell скрипта.
Скачиваем исходники командой
hg clone code.google.com/p/android-openvpn-settings
Открываем файл
\src\de\schaeuffelhut\android\openvpn\service\ManagementThread.java
Находим функцию public void sendSignal(int s) её мы и будем редактировать.
Комментируем отправку SIGUSR1 и вставляем вызов нашего скрипта с правами рут.
Файл скрипта у нас будет называться точно так же как и файл подключения, но дополненный расширением sh.
Должно получится так:
Всё, можно собирать, подписывать, устанавливать. Перед установкой обязательно деинсталлируйте старый «openvpn-setting» из системы.
Далее проверим конфигурации подключения openvpn.
Сервер
На сервере требуется внести директиву float, поскольку мы будем менять физическое соединение, а с ним и IP. Так же сервер должен транслировать внутренний адрес нашего клиента во внешнюю сеть. Для настройки этого мне удобней использовать директивы up и down.
up «/bin/sh /etc/openvpn/androidupdown»
down «/bin/sh /etc/openvpn/androidupdown»
Скрипт должен быть примерно таким:
Клиент
Во первых надо убрать директиву redirect-gateway, если она есть. Но задать up и down с указанием скрипта, который выполнит настройку маршрутов. Если вы помните, мы условились, что имя файла будет повторять имя конфигурации с добавление sh. Да, мы будем вызывать один и тот же скрипт и из демона, и из монитора.
Если конфигурация называется «testconfig.ovpn», то пусть будет так:
up «/system/bin/sh /sdcard/openvpn/testconfig.ovpn.sh»
down «/system/bin/sh /sdcard/openvpn/testconfig.ovpn.sh»
Здесь стоит немного пояснить.
Мы создаем альтернативную таблицу маршрутизации под номером 100 в которой указываем шлюзом по умолчанию vpn туннель. И добавляем правило маршрутизации, которое заворачивает весь трафик в нашу таблицу под номером 100, раньше чем он попадет в основную таблицу под именем main.
В альтернативной таблице есть маршрут, который выталкивает пакеты предназначенные для сервера, обратно в цепочку правил. Далее они попадут в основную таблицу маршрутизации. Там они смогут найти основной маршрут физического соединения. Но, а если не найдут, такое случатся во время реконнектов, то это не страшно. Openvpn может потерпеть некоторое время, но разумеется не вечно. Только сообщения в логах, напомнят об отсутствии связи непродолжительное время.
Не забывайте скрипты должны заканчиваться переводом строки.
Для разрешения запуска скриптов на Android, необходимо установить «Built-in + script» в «Preferences» которые вызываются по долгому тапу на подключении. Теперь можно пробовать.
В результате тестирования оказалось, что некоторые программы сами проверяют состояние сети и пытаются переподключаться во время любых изменений. Тут либо просить авторов исправить ситуацию. Либо самостоятельно де компилировать и исправлять. В любом случае закрытие TCP сессии происходит, не по таймауту, а так как положено.
Буду рад любой критике и замечаниям. Желаю стабильного коннекта!
Источник
Как очистить таблицу маршрутизации из кеша в Linux
В этой статье я расскажу, как очистить таблицу маршрутизации в Linux с помощью команд терминала.
Таблица маршрутизации в компьютерных сетях – это таблица данных, которая хранится на маршрутизаторе или сетевом сервере, который перечисляет маршруты к конкретным сетевым адресам.
Обычно каждый статический маршрут имеет связанную с ним метрику.
Эта метрика используется сетевыми устройствами для определения маршрута, который должен быть выбран для пакетов, предназначенных для конкретной сети.
Говоря в контексте Linux, они также поддерживают таблицу маршрутизации, в основном, когда сервер имеет более одного активного сетевого интерфейса.
В какой-то момент вам может понадобиться очистить таблицу маршрутизации или обновить ее, чтобы вы могли получить доступ к некоторым сетям.
Сеть (сети) может быть локальной в вашей организации или где используется обход общего интернета.
Большинство дистрибутивов Linux предоставляют два основных инструмента, используемых для этой задачи: инструменты ip и route.
Очистить таблицу маршрутизации с помощью команды ip
ip – это инструмент командной строки Unix / Linux, используемый для отображения и управления маршрутизацией, сетевыми устройствами, интерфейсами и туннелями.
Это замена обычно используемого инструмента ifconfig.
Этот инструмент может выполнять практически все виды сетевых конфигураций Linux для интерфейса.
Прежде чем очищать любые маршруты, сначала вам нужно проверить текущую таблицу маршрутизации, используя команду :
Как вы можете видеть из моего вывода, мой маршрут по умолчанию установлен в 192.168.0.1.
Это означает, что все пакеты, предназначенные для сетей, отличных от моей локальной подсети 192.168.0.0/24, будут перенаправлены через 192.168.0.1.
Этот IP 192.168.0.1 предназначен для моего маршрутизатора.
Для демонстрационных целей я собираюсь запустить службу Docker на своем ноутбуке.
Docker имеет свою собственную подсеть. мы будем использовать это, чтобы продемонстрировать использование команды ip.
Очистить определенный маршрут
Теперь у меня есть другой маршрут для подсети 172.17.0.0/16 через 172.17.0.1.
Если я хочу очистить этот маршрут, я буду использовать такую команду:
Вы можете подтвердить, что маршрут удален из таблицы маршрутизации.
Очистить все маршруты
Чтобы очистить все маршруты в таблицах маршрутизации, используются параметры ip-команды route flush table main.
Повторная проверка таблицы маршрутизации должна быть пустой.
Эту команду следует использовать с осторожностью, так как она может выбить вас из сервера, если вы не находитесь на прямом подключении или не имеете других методов доступа, таких как консоль, модем и т.д.
Очистить кеш маршрутизации
Ядро Linux обычно ссылается на кеш маршрутизации перед извлечением нового маршрута из таблиц маршрутизации.
Этот кеш можно очистить с помощью команды:
Подтвердите все доступные кешированные маршруты:
Отображение статистики из кеша маршрутизации
Если вы хотите получить дополнительную информацию о кешированных маршрутах. используйте команды:
Дается дополнительная информация, такая как поле «used», которое указывает количество обращений к этому маршруту в кеше маршрутизации.
Для постоянного статического маршрута вы можете размещать маршруты в любом из следующих файлов:
Примером постоянных маршрутов для CentOS 7 является:
Строка на Ubuntu / Debian будет выглядеть следующим образом:
Источник
Команда ROUTE — Обработка таблиц сетевых маршрутов.
Формат командной строки:
ROUTE [-f] [-p] [-4|-6] command [destination] [MASK netmask] [gateway] [METRIC metric] [IF interface]
Подсказку по параметрам командной строки можно получить используя встроенную справку ( route /? ):
-f — Очистка таблиц маршрутов от записей всех шлюзов. При указании одной из команд таблицы очищаются до выполнения команды.
-p — При использовании с командой ADD задает сохранение маршрута при перезагрузке системы. По умолчанию маршруты не сохраняются при перезагрузке. Пропускается для остальных команд, изменяющих соответствующие постоянные маршруты. Этот параметр не поддерживается в Windows 95.
-4 — Обязательное использование протокола IPv4.
-6 — Обязательное использование протокола IPv6.
command — Одна из следующих команд:
— PRINT — Печать маршрута
— ADD — Добавление маршрута
— DELETE — Удаление маршрута
— CHANGE — Изменение существующего маршрута
destination — Адресуемый узел.
MASK — Указывает, что следующий параметр интерпретируется как маска сети.
netmask — Значение маски подсети для записи данного маршрута. Если этот параметр не задан, по умолчанию используется значение 255.255.255.255.
interface — Номер интерфейса для указанного маршрута.
METRIC — Определение метрики, т.е. цены для адресуемого узла. Чем ниже значение метрики, тем выше приоритет узла при построении маршрута.
Поиск всех символических имен узлов проводится в файле сетевой базы данных NETWORKS. Поиск символических имен шлюзов проводится в файле базы данных имен узлов HOSTS.
Для команд PRINT и DELETE можно указать узел и шлюз с помощью подстановочных знаков или опустить параметр «шлюз».
Если адресуемый узел содержит подстановочные знаки * или ?, он используется в качестве шаблона, и печатаются только соответствующие ему маршруты. Знак ‘*’ соответствует любой строке, а ‘?’ — одному знаку.
Примеры: 157.*.1, 157.*, 127.*, *224*.
Соответствие шаблону поддерживает только команда PRINT.
Недопустимое значение MASK вызывает ошибку, если (УЗЕЛ & МАСКА) != УЗЕЛ.
Например:
route ADD 157.0.0.0 MASK 155.0.0.0 157.55.80.1 IF 1 — Добавление маршрута завершится ошибкой, поскольку указан недопустимый параметр маски. (Узел & Маска) != Узел.
route PRINT — отобразить таблицу маршрутов
route PRINT -4 — отобразить таблицу маршрутов только для IPv4
route PRINT -6 — отобразить таблицу маршрутов только для IPv6
route PRINT 157* — отобразить таблицу маршрутов только для узлов, начинающихся со 157
Если сетевой интерфейс (IF) не задан, то производится попытка найти лучший интерфейс для указанного шлюза.
route ADD 3ffe::/32 3ffe::1 — добавить новый маршрут для узла с IPv6
route CHANGE 157.0.0.0 MASK 255.0.0.0 157.55.80.5 METRIC 2 IF 2 — изменить существующий маршрут для узла IPv4
Параметр CHANGE используется только для изменения шлюза или метрики.
route DELETE 157.0.0.0 — удалить маршрут для IPv4.
route DELETE 3ffe::/32 — удалить маршрут для IPV6
Примеры использования команды ROUTE
route print — отобразить текущую таблицу маршрутов.
Пример отображаемой таблицы:
===========================================================================
Список интерфейсов
24. 00 50 ba 5d 0c c4 . D-Link DFE-538TX 10/100 адаптер
13. 00 19 db ce 97 9c . Сетевая карта Realtek RTL8169/8110 Family NIC
1. Software Loopback Interface 1
17. 00 00 00 00 00 00 00 e0 Адаптер Microsoft ISATAP
12. 00 00 00 00 00 00 00 e0 Teredo Tunneling Pseudo-Interface
===========================================================================
IPv4 таблица маршрута
===========================================================================
Активные маршруты:
Сетевой адрес 0.0.0.0 127.0.0.0 . 224.0.0.0 | Маска сети 0.0.0.0 255.0.0.0 . 240.0.0.0 | Адрес шлюза 192.168.0.1 On-link . On-link | Интерфейс 192.168.0.2 127.0.0.1 . 192.168.0.2 | Метрика 266 306 . 266 |
===========================================================================
Постоянные маршруты:
Сетевой адрес 0.0.0.0 | Маска 0.0.0.0 | Адрес шлюза 192.168.0.1 | Метрика По умолчанию |
===========================================================================
IPv6 таблица маршрута
===========================================================================
Активные маршруты:
Метрика 1 40 19 20 20 1 | Сетевой адрес 306 ::1/128 276 fe80::/64 276 fe80::/64 276 fe80::/64 276 fe80::6034:c4a3:8e4e:b7a 306 ff00::/8 | Шлюз On-link On-link On-link On-link a/128 On-link /128 On-link 7/128 On-link On-link On-link On-link On-link |
===========================================================================
Постоянные маршруты:
Отсутствует
Список интерфейсов — отображаются идентификаторы ( ID ), физические ( MAC ) адреса и названия сетевых адаптеров. В примере:
24 — идентификатор интерфейса
00 50 ba 5d 0c c4 — MAC-адрес сетевого адаптера
D-Link DFE-538TX 10/100 адаптер — название сетевого адаптера.
Сетевой адрес (Network Destination) — IP-адрес, адрес сети, или адрес 0.0.0.0 используемый для шлюза по умолчанию ( Default Gateway ). Это конечная точка маршрута
Маска сети ( Netmask ) — маска сети.
Адрес шлюза ( Gateway ) — IP-адрес шлюза, через который будет выполняться отправка пакета для достижения конечной точки.
В Windows Vista / Windows 7 / 8 и более поздних версиях, для адресов, достижимых локально, в данной колонке отображается On-link . Другими словами, значение On-link в колонке «Шлюз» означает, что шлюз не используется, адрес назначения достижим напрямую, без маршрутизации.
Интерфейс ( Interface ) — IP-адрес сетевого интерфейса, через который выполняется доставка пакета конечной точке маршрута.
Метрика ( metric ) — значение метрики (1-9999). Метрика представляет собой числовое значение, позволяющее оптимизировать доставку пакета получателю, если конечная точка маршрута может быть достижима по нескольким разным маршрутам. Чем меньше значение метрики, тем выше приоритет маршрута.
route print 192.* — отобразить таблицу маршрутов только для адресов, начинающихся с 192.
route add 0.0.0.0 mask 0.0.0.0 192.168.1.1 — установить в качестве шлюза по умолчанию (основного шлюза) адрес 192.168.1.1
route -p add 10.0.0.0 mask 255.0.0.0 10.0.0.1 — добавить маршрут для подсети 10.0.0.0/255.0.0.0 и запомнить его в реестре . Это постоянный статический маршрут. Если маршрут добавлен без использования параметра -p то он сохраняется только до перезагрузки системы (до перезапуска сетевого системного программного обеспечения). Если же, при добавлении маршрута искользовался данный параметр, то информация о маршруте записывается в реестр Windows (раздел HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\PersistentRoutes ) и будет использоваться постоянно при активации сетевых интерфейсов.
route delete 10.0.0.0 mask 255.0.0.0 — удалить маршрут для подсети 10.0.0.0/255.0.0.0 .
route add 10.10.10.10 192.168.1.158 — добавить маршрут для узла с IP-адресом 10.10.10.10 . Если маска в команде не задана, то подразумевается ее значение равное 255.255.255.255 , т.е конечная точка назначения является одиночным IP-адресом узла.
route delete 10.10.10.10 — удалить маршрут созданный предыдущей командой
route change 10.0.0.0 mask 255.0.0.0 10.10.10.1 — изменить адрес шлюза для существующего маршрута к сети 10.0.0.0/255.0.0.0 на значение 10.10.10.1 Допускается использование данной команды только для изменения адреса шлюза и метрики.
route -f — очистить таблицу маршрутов. После перезагрузки системы, или при перезапуске сетевых подключений таблица маршрутов будет восстановлена исходя из текущей сетевой конфигурации компьютера. При выполнении команды route -f из таблицы удаляются все маршруты, которые удовлетворяют условиям:
— не относятся к петлевому интерфейсу ( интерфейсу с IP 127.0.0.1 и маской -255.0.0.0)
— не являются маршрутами для многоадресной (multicast) рассылки (IP 224.0.0.1 маска 255.0.0.0)
— не являются узловыми маршрутами (когда маска равна 255.255.255.255) .
При обработке таблицы маршрутов, статические маршруты имеют высший приоритет, по сравнению с маршрутом, использующим для достижения конечной точки шлюз по умолчанию.
Если вы желаете поделиться ссылкой на эту страницу в своей социальной сети, пользуйтесь кнопкой «Поделиться»
Источник