В OS X возможно ли указать, какое сетевое соединение использует приложение?
11
Мой Ethernet подключается к локальной сети, мой аэропорт подключается к другой сети (это еще один Mac, использующий VPN-подключение). Я хочу, чтобы все приложения, кроме iPhone Simulator, подключались через локальную сеть.
Основной способ, которым вы должны были бы пойти по этому пути, это, вероятно, использовать командную строку ipfw , хотя у меня действительно нет большого опыта с этим. Вы можете создавать собственные правила маршрутизации, чтобы делать то, что вам нужно.
Некоторые другие варианты:
Если приложение пытается использовать что-то конкретно в этой сети, оно должно быть направлено именно таким образом. Например, если ваша локальная сеть - 192.168.xx, а ваш удаленный - 10.0.xx, если вы пытаетесь получить доступ к чему-то на 10.0.xx, он должен маршрутизироваться таким образом.
Еще одна идея, которая приходит на ум (которая на самом деле просто обходит проблему), состоит в том, чтобы иметь appleScript, который изменял порядок интерфейсов, когда вам это нужно. Ваш Mac должен использовать все, что находится вверху списка, в качестве основной сети в настройках. Если вы перетащите аэропорт вверх, он будет использовать его в качестве основной сети. Возможно, это будет легко сделать с помощью скриптов, и это быстро изменится, когда вам нужно что-то протестировать в симуляторе.
Нет, ipfw не действует «для каждого приложения», но если он может найти используемые им порты, ему необходимо перенаправить их через правую подсеть… это возможно, но, вероятно, сложно.
Я не думаю, что Маленький Снитч делает то, что хочет! по крайней мере, я использую его только для контроля моего интернет-соединения (разрешить подключение приложения или нет)
Am1rr3zA
1
Действительно, Little Snitch не имеет к этому никакого отношения, это контроллер исходящего брандмауэра.
Ответы:
Основной способ, которым вы должны были бы пойти по этому пути, это, вероятно, использовать командную строку ipfw , хотя у меня действительно нет большого опыта с этим. Вы можете создавать собственные правила маршрутизации, чтобы делать то, что вам нужно.
Некоторые другие варианты:
Если приложение пытается использовать что-то конкретно в этой сети, оно должно быть направлено именно таким образом. Например, если ваша локальная сеть - 192.168.xx, а ваш удаленный - 10.0.xx, если вы пытаетесь получить доступ к чему-то на 10.0.xx, он должен маршрутизироваться таким образом.
Еще одна идея, которая приходит на ум (которая на самом деле просто обходит проблему), состоит в том, чтобы иметь appleScript, который изменял порядок интерфейсов, когда вам это нужно. Ваш Mac должен использовать все, что находится вверху списка, в качестве основной сети в настройках. Если вы перетащите аэропорт вверх, он будет использовать его в качестве основной сети. Возможно, это будет легко сделать с помощью скриптов, и это быстро изменится, когда вам нужно что-то протестировать в симуляторе.
источник
Возможно, вы захотите попробовать Little Snitch .
Я не уверен, что он имеет эту функцию, так как я не использовал его некоторое время, но это стоит попробовать.
источник