danilovav писал(а):
Цитата:
Нужно чтобы PPTP клиент, организованный на DFL автоматом поднимался лишь когда идет обращение по имени к хосту, который живет в удаленном офисе. Во всех остальных случаях, включая обычное обращение к I-Net, PPTP клиент должен спать.
DFL оперирует IP адресами. Если вы (клиентский компьютер) пришлете на него запрос в подсеть офиса, все заработает.
При этом, имя должно быть "разрешено" без участия DFL - у него нет собственного DNS форвардера или кеша.
В обоих случаях, как и в варианте 1, так и в варианте 2, DFL участвует в резольвинге весьма опосредованно.
ВАРИАНТ 1 !!!
...но тогда PPTP клиент поднимается при любом DNS запросе, даже если не будет юзаться удаленная сеть...
Т.е. по шагам, что происходит...
- Прошел запрос к первому DNS, розданному DFL-кой по DHCP клиентам с интерфейса LAN (он же DNS удаленного офиса).
- DFL поглядел на таблицу маршрутов, прикинул метрики, увидел как дойти до первого DNS.
- поднял PPTP-клиента в удаленный офис.
- обратился к первому DNS (который в удаленном офисе)
- если DNS сказал, что хост здесь, в удаленном офисе, то все нормально, идем к этому хосту.
- а вот если DNS сказал, что хост находится где то в I-Net, то, согласно таблице машрутизации, траф уходит на Default GW для сети 0/0. (в принципе, так и задумано)
Но, получается, если фактическое обращение происходит не к хостам удаленного офиса, то PPTP поднимается совершенно неразумно, только для того, чтобы выяснить, что в удаленный офис, как раз, идти то и не нужно
Как следствие на WAN удаленного офиса генерится совешенно ненужный траф при каждом DNS запросе, что не есть гуд.
Собственно, для того чтобы PPTP клиент, поднятый на DFL-ке спал и не дергался, если нет реального обращения к хостам удаленного офиса был и выбран вариант с файлом hosts.
Там более вкусная схема DNS запросов получается:
- Полностью кладем "большой прибор" на DNS удаленного офиса и в качестве первого DNS юзаем DNS, который резольвит хосты из I-Net, но при этом представления не имеет о хостах локальной сети удаленного офиса.
- Переписываем статику и псевдостатику с DNS удаленного офиса в локальный файл hosts (да, писанины много, в моем случае более 40 хостов, но...)
- Согласно тому что я знаю о Win и *NIX (про другие оси ни чего вразумительного не скажу) при разрешении имени сначала ось просматривает файл hosts, и уже если там ни чего нет, то формируется DNS запрос.
- Обращаемся к хосту xhostx.xxx.xxx.
- Ось просматривает файл hosts. Дальше два варианта.
а) запись найдена.
- Запись найдена в файле hosts - есть адрес, запроса к DNS нет
- Согласно таблице маршрутизации DFL поднимает PPTP-клиента в удаленный офис. (PPTP поднят не зря).
б) запись не найдена.
- Запись не найдена в файле hosts, формируется запрос к DNS, который резольвит хосты в I-Net, но ни чего не знает о хостах локально сети удаленного офиса. (А нам и не нужно, чтобы этот DNS об этом знал, ведь вся нужная инфа лежит в файле hosts)
- имя прорезольвино от DNS получен адрес A.B.C.D - это где то в I-Net.
- Согласно таблице маршрутизации DFL не трогает PPTP-клиента, оставляя его спать и отправляет траф через Default GW в I-Net.
(PPTP зря не поднимается, на WAN порту удаленного офиса лишний ненужный траф не генерится).
Как то вот так... Полагаю, доступно изложил ход своей мысли.
(Уже 3-й день, работает вариант с hosts. Пока устраивает, но все равно, это ущербное решение.)
Если еще каких то интересных решений нет, то хотелось бы узнать, есть ли у оси DFL-ки свой файл hosts и если есть, то можно ли до него долезть и заюзать по варианту 2, чтобы получился некий ручной псевдо-DNS с DNS Relay-ем непосредственно на DFL-ке.
Если это прокатит, то я смогу решение с hosts опосредованно заюзать и на смартфонах c Symbian. По крайней мере, тот минимум сетевых ресурсов удаленного офиса, который нужно заюзать со смартфона, у меня висит на статике, которая изумительно работает с решением через hosts.