dil: (Default)
dil ([personal profile] dil) wrote2010-02-15 06:00 pm

Каверзный вопросик для системных администраторов

Дано: маленькая одноранговая виндовая локальная сеть. Доменный контроллер, WINS, DHCP, всё как обычно. Всё подключено через одни общий неуправляемый коммутатор. IP-адреса из блока 10.0.0.0/24.

Шлюзом в интернет работает юниксовая машина. Она же по совместительству работает VPN-концентратором (PPTP) для внешних клиентов. Адреса выдаёт из той же сети 10.0.0.0/24, чтобы подключившиеся клиенты прозрачно видели локальную сеть.

Никакой фильтрации трафика для локальных IP-адресов ни на самом шлюзе, ни на внутренних серверах нет.

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

В то же время соединения с самогО шлюза на те же внутренние серверы успешно устанавливаются.

Форвардинг на шлюзе, естественно, включён. Анализ с помощью tcpdump на шлюзе показывает, что пакеты из VPN успешно форвардятся в локальную сеть, но ответы на них не приходят. proxyarp включён.

Вопрос: кто виноват, что делать?

Upd: ответ под катом

А дело в том, что добрые администраторы при переносе PPTP-сервера с доменного контроллера на юникс скопировали туда и пул динамических адресов. В результате DHCP-сервер в локалке и PPTP-сервер выдавали адреса из одного диапазона. И когда pptp-клиент получал адрес, уже имеющийся в локалке, оно нифига и не работало, поскольку локальная машина успевала отвечать на ARP-запросы раньше, и все ответы уходили в неё.

Увидеть это со шлюза затруднительно, потому что для него на этот динамический адрес был явный маршрут через ppp*, и искать его через ARP шлюз даже и не пытался. А посмотреть что-либо с других машин в локалке тоже было затруднительно, потому что на них из VPN попасть было нельзя.

Оригинал этой записи. Комментировать можно тут или там.

Любые материалы из этого блога запрещается использовать на сайте livejournal.ru в любой форме и любом объёме

[identity profile] dil.livejournal.com 2010-02-15 05:28 pm (UTC)(link)
так вот именно что должны. а пакеты от машинок из LAN в шлюз приходят только на его личный IP. а на IP впнных клиентов не приходят

[identity profile] dmarck.livejournal.com 2010-02-15 05:31 pm (UTC)(link)
можешь всё-таки показать кусочек tcpdump -e? потому что явно фигня какая-то.

[identity profile] dil.livejournal.com 2010-02-15 05:32 pm (UTC)(link)
не, тогда ты сразу догадаешься :)

[identity profile] dmarck.livejournal.com 2010-02-15 05:36 pm (UTC)(link)
фуй, какой ты. ;-P

что, gw не тот мак высовывает? или маска плохая?

[identity profile] dil.livejournal.com 2010-02-15 05:39 pm (UTC)(link)
не, маска везде /24, и мак он отдаёт свой, как положено.

[identity profile] dil.livejournal.com 2010-02-16 07:46 am (UTC)(link)
см. апдейт

[identity profile] mik1.livejournal.com 2010-02-15 05:32 pm (UTC)(link)
если proxyarp настроен ровно, то только файрвол
я аналогичным образом постоянно нарывался при deny all

[identity profile] dil.livejournal.com 2010-02-15 05:34 pm (UTC)(link)
нету файрвола для локальных адресов, это в условии задачи написано.

[identity profile] mik1.livejournal.com 2010-02-15 05:51 pm (UTC)(link)
у неуправляемого свитча залипает таблица arp?

[identity profile] dil.livejournal.com 2010-02-15 05:53 pm (UTC)(link)
не, со свитчом всё хорошо. со шлюза всё нормально работает.

[identity profile] mik1.livejournal.com 2010-02-15 06:17 pm (UTC)(link)
mtu/mru/mss? я не помню чего там за нюансы у pppd, ибо все на mpd строю

[identity profile] dil.livejournal.com 2010-02-15 10:01 pm (UTC)(link)
нет. даже мелкие пинги не работают

[identity profile] mik1.livejournal.com 2010-02-15 10:39 pm (UTC)(link)
мак точно от правильного езера клиенту в LAN отдается?

[identity profile] dil.livejournal.com 2010-02-16 07:23 am (UTC)(link)
точно. откуда там другой возьмётся..

[identity profile] dmarck.livejournal.com 2010-02-15 05:55 pm (UTC)(link)
У неуправляемого свитча нет таблицы ARP, за исключением управляющего интерфейса ;-P

[identity profile] dil.livejournal.com 2010-02-15 05:55 pm (UTC)(link)
как это нет? тогда это не свитч, а хаб

[identity profile] dmarck.livejournal.com 2010-02-15 05:56 pm (UTC)(link)
У него есть таблица маков, но нет связи ея с третьим уровнем ;-P

[identity profile] dil.livejournal.com 2010-02-15 05:58 pm (UTC)(link)
ну ладно :)
в общем, с таблицей всё нормально

[identity profile] dmn42.livejournal.com 2010-02-15 06:02 pm (UTC)(link)
Откуда у неуправляемого свича управляющий интерфейс? %)

[identity profile] dil.livejournal.com 2010-02-15 06:03 pm (UTC)(link)
а я ему и возражаю: логично!