Здесь проблема. У меня есть два сетевых подключения на моей машине DEV.

LAN - подключается к сети здания и интернету. IP назначается DHCP и составляет 192.168.30.XX.

LOCAL - подключается к коммутатору, который имеет один тестовый компьютер. IP - 192.168.25.100. И тестовая машина находится на 192.168.25.2.

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

Проблема в том, что вчера кто-то (вероятно, случайно) добавил в локальную сеть компьютера машину с IP-адресом 192.168.25.2, поэтому теперь, когда моя машина TEST перезагружается и я пингую ее, я получаю ответ от этой удаленной машины в локальной сети. , мое программное обеспечение считает, что машина TEST восстановлена и пытается войти в систему. Это, очевидно, дает сбой, потому что это не машина TEST, отвечающая, и это все еще в середине перезагрузки.

Мой вопрос, как мне тоже:

  1. запретить отправку всех запросов на 192.168.25.2 по локальной сети или
  2. заставить все запросы для 192.168.25.2 выходить через LOCAL

ОБНОВЛЕНИЕ: я думаю, что лучшим решением было бы изменить таблицу маршрутизации так, чтобы пакеты к 192.168.25.2 были заблокированы по одному интерфейсу и статически перенаправлены по другому.

Дело в том, что я могу добавить статический маршрут, используя это:

route add 192.168.25.100 mask 255.255.255.255 192.168.25.2

Но Windows все равно автоматически вернется к локальной сети и попытается пропинговать ее в случае сбоя статического маршрута.

Есть ли способ блокировать трафик к определенному интерфейсу или шлюзу в таблице маршрутизации?

2 ответа2

0

Не уверен, почему я не думал об этом раньше, но самое простое решение - просто создать пользовательское правило в брандмауэре Windows, чтобы блокировать соединения с / с указанного IP-адреса на определенном интерфейсе или типе соединения.

ОБНОВЛЕНИЕ: действительно не решает проблему также. Это просто заставляет эхо-запросы возвращаться как "Общий сбой", а не как тайм-аут или недоступность пункта назначения. "Общий сбой" вызывает исключение в C #, и мне нужно написать обработчик, чтобы его перехватить.

Опять же, я мог бы написать обработчик исключений, но это не очень элегантно.

0

Если кто-то «добавил машину» в сеть и присвоил ей статический IP-адрес вне области DHCP, то, вероятно, у него возникли и другие проблемы ... Невозможно подключиться к принтерам / другим машинам / другим странным проблемам из-за нахождения в другой подсети. Узнайте, кто этот человек, и правильно настройте его компьютер (т.е. по DHCP!).

Проверьте на сервере, что область DHCP настроена правильно, а затем посмотрите, есть ли аренда для «мошеннического» ПК. Срок действия истекает, если найден. Затем добавьте исключения DHCP для вашего ПК, которые вы хотите использовать в другой подсети, если их еще нет. Может быть хорошей идеей будет сбросить DNS на сервере после выполнения всего этого.

Если вы не являетесь администратором сети, подключите их - люди не должны настраивать ПК в вашей сети, если они не знают, как это сделать!

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .