Я нахожусь в интрасети, которая не подключена к Интернету, и к маршрутизатору Wi-Fi с подключением к Интернету. Когда я подключен к беспроводной сети, я могу просматривать Интернет, но не могу просматривать свою локальную сеть с подключенным кабелем Ethernet.
Как я могу просматривать Интернет через маршрутизатор Wi-Fi и в то же время просматривать веб-приложение локальной сети через подключенный кабель Ethernet?
Конечно, можно. Вы не указали его, но я предполагаю, что вы получаете IP-адрес автоматически (через DHCP ) как при беспроводном, так и при проводном подключении.
Проводной Ethernet быстрее, чем беспроводной, поэтому, если есть два способов добраться куда-либо, проводная воля имеет приоритет над Wi-Fi по умолчанию. С учетом сказанного, когда вы подключаетесь к обоим каналам, оба DHCP-сервера по умолчанию объявляют себя шлюзом по умолчанию для всего трафика.
Итак, теперь ваш компьютер считает, что у него есть два способа подключения к Интернету, а поскольку проводной предпочтительно, он будет отправлять трафик в Интернет через Ethernet. В этом случае в таблице маршрутизации вы увидите два шлюза для сетей по умолчанию 0.0.0.0, route -n
, один с вашим беспроводным маршрутизатором в качестве шлюза и один для проводной сети.
Метрика для шлюза Ethernet будет ниже, чем для беспроводного, поэтому ваш компьютер будет отправлять туда пакеты. Теперь, когда ваш Ethernet-маршрутизатор получает их, он не знает, что с ними делать, поэтому просто отбрасывает их. Порядок, в котором вы подключались первым, не имеет значения.
Что касается исправления (это предполагает случай DHCP), правильным способом было бы сказать маршрутизатору локальной сети, чтобы он прекратил рекламировать себя как шлюз по умолчанию. Вам необходимо авторизоваться в роутере и посмотреть настройки. Если у вас нет контроля над маршрутизатором, вы можете удалить его со своей стороны с помощью:
route del default gw eth.router.ip.address
Сетевой менеджер Ubuntu теперь поставляется с классной функцией изоляции интерфейса только для локальных ресурсов. Эта функция позволяет указать интерфейс (например, VPN или LAN-соединение) как локальный и не использовать его для исходящих Интернет-соединений.
В меню WiFi перейдите к Редактирование соединений, а затем выберите ethernet-соединение, которое вы хотите отредактировать. Затем перейдите на вкладку IPv4 Settings (Настройки IPv4) и нажмите кнопку Routes (Маршруты). Установите флажок Используйте это соединение только для ресурсов своей сети:
При необходимости сделайте то же самое на закладке IPv6 Settings (Настройки) IPv6]. Затем, наконец, отключите и снова подключите измененный интерфейс.
Теперь, Ubuntu разумно не будет маршрутизировать Интернет-трафик через этот интерфейс.
Альтернативно, вы можете сделать то же самое из командной строки. cd
перейдите к /etc/NetworkManager/system-connections
и найдите нужный вам интерфейс. Откройте его с помощью sudo nano <ваш целевой интерфейс>
и добавьте следующий текст под заголовками [ipv4]
и [ipv6]
:
never-default=true
Ваш готовый файл должен выглядеть следующим образом:
...
[ipv4]
dns-search=
method=auto
never-default=true
[ipv6]
addr-gen-mode=stable-privacy
dns-search=
ip6-privacy=0
method=auto
never-default=true
Обратите внимание, что при использовании метода командной строки вам нужно будет отсоединиться и снова подключиться к сети, чтобы эти настройки могли быть выполнены.
ನಾನು ನಿಮಗೆ 100% ಆತ್ಮವಿಶ್ವಾಸವನ್ನು ಹೊಂದಿರುವ ಉತ್ತರವನ್ನು ನೀಡಲು ಇನ್ನೂ ಸಾಕಷ್ಟು ಮಾಹಿತಿಯಿಲ್ಲ, ಆದರೆ ಇಲ್ಲಿ ಕೆಲವು othes ಹೆಗಳಿವೆ.