Можно ли настроить MacBook Pro на использование Ethernet-кабеля через Wi-Fi, когда он пытается получить доступ к определенному IP-адресу в файле .bashrc или в любом другом файле конфигурации?
Например, вы можете установить, чтобы он не использовал прокси, когда он маршрутизирует на мой частный IP, используя следующую команду.
export NO_PROXY=192.168.0.1
Можно ли попросить мой ноутбук использовать кабель Ethernet вместо соединения Wi-Fi для этого конкретного IP?
mountain-lion
network
wifi
user862226
источник
источник
Ответы:
Здесь можно сделать две вещи.
Если вы хотите, чтобы весь ваш трафик проходил через встроенный Ethernet, если включены и Ethernet, и Wi-Fi, вы можете сделать его более предпочтительным в Системных настройках:
System Preferences -> Network
покажет окно со всеми определенными сетевыми подключениями. В нижней части левой боковой панели (со списком интерфейсов) вы увидите три кнопки: +, - и зубчатое колесо. Нажмите на последний (зубчатое колесо), и вы увидите четвертый вариант сверху - «Установить сервисный заказ». Если вы перетащите Ethernet выше Wi-Fi после того, как нажмете эту опцию, тогда, если оба активны, предпочтение будет отдано Ethernet.Однако если вы хотите, чтобы выбранный трафик проходил через Ethernet, а трафик по умолчанию - через Wi-Fi, то это немного сложнее и обычно включает использование командной строки и, в частности,
route
команды.Здесь есть несколько сценариев, поэтому сейчас я задам несколько вопросов, которые могут указать вам верное направление или позволят мне помочь с лучшим ответом:
Оба интерфейса WIFI и Ethernet находятся в одной локальной сети? т.е. у них будет IP-адрес из того же диапазона? они будут использовать тот же шлюз по умолчанию?
IP-адрес назначения находится в той же локальной сети, где включен WIFI или Ethernet? или IP-адрес назначения "где-то в интернете"?
Сейчас я дам вам ответ для самого простого сценария, который заключается в том, что WIFI и Ethernet находятся в разных локальных сетях, а IP-адрес назначения находится в Интернете.
Допустим, WIFI получает IP-адрес 192.168.0.10/24, а шлюз по умолчанию для доступа в Интернет - 192.168.0.1. Скажем также, что Ethernet получает IP-адрес 192.168.1.10/24 и что шлюзом по умолчанию, который используется для выхода в Интернет через Ethernet, является 192.168.1.1.
Предположим также, что вы хотите маршрутизировать весь трафик через WIFI по умолчанию, но в то же время вы хотите, чтобы весь трафик на хост с IP 192.0.2.5 проходил через Ethernet.
В этом случае вам нужно пройти процедуру я описал в начале и убедитесь , что Wi - Fi является ВЫШЕ в Ethernet (поэтому является более предпочтительным).
Затем откройте Терминал и введите следующую команду:
Вам нужно будет ввести свой собственный пароль, когда его спросит команда sudo.
Если у вас есть несколько IP-адресов, к которым вы хотите добавить маршруты через Ethernet, вы можете запустить больше
route
команд.Теперь вы должны знать, что каждый раз, когда вы отключаете соединение Ethernet, маршруты исчезают, и вам придется вручную вводить их снова в Терминале. Если вы хотите, чтобы это было автоматизировано, вы можете посмотреть в
launchd
руководствах по терминалуroute
иlaunchd.plist
- просто наберитеman route
иman launchd.plist
. Одной из переменных, которые вас интересуют для launchd, являетсяNetworkState
. Обратите внимание, у меня не было необходимости делать что-то подобное автоматически (однако я иногда использовал это вручную), и поэтому у меня нет готового решения. Потребуются некоторые сценарии и т. Д., Но по крайней мере это должно помочь вам.источник