RUVATA
11-11-2011, 19:50
Всем доброго времени суток...
Первый раз сталкиваюсь с реализацией подобного по Windows XP... но чуется аки я где-то рядом.
И так:
Главный герой - Windows XP Pro с двумя сетевыми адаптерами один глядит в циску провайдера и ест оттудова интернет(назовем его InternetConnection), второй глядит в локалку населенную "Маздаями" всех мастей:(XP Pro, XP Home, Vista, Win 7 Pro, назовем его CorpNetworkConnection) у локалочки имеется свой контроллер домена w2k3 R2, но его аки шлюз использовать категорически не хотят (забудем о его существовании), так что тяжелое бремя шлюза легло на плечи нашего главного героя.
Так вот, работало у них все следующим образом (ICS это называется насколько я понимаю) : InternetConnection прописан статический IP выданный провайдером, его шлюз, DNS и т.д. , "Сделать это подключение доступным..." для CorpNetworkConnection, сам CorpNetworkConnection естественно обратился в 192.168.0.1 / 255.255.255.0 и смотрит в коммутатор.
И все в общем то работало. Но однажды им понадобилось пробросить порт н/п 8000 на 8000 порт одного из участников локальной сети,
те кто все это затеял, им возьми да и скажи, что проблемм не будет, заходите мол в свойства InternetConnection, на вкладке "Дополнительно", клацаете по "Параметры"
откроется окошечко в котором будет предложено настроить службы локальной сети для пользователей интернета (DNS, DHCP и т.д.) там клацаете "Добавить", IP-шник той самой машины
куда требуется провести 8000 порт, сам порт соответственно 8000 в полях "Внешний порт..." и "Внутренний порт"... И ...
Баста !!! ничего не заработало... при обращении из интернета на статический-ip:8000 ничего не происходит.
И так, и так они прыгали вокруг этих параметров... ну и собственно проблема досталась мне по знакомству, я долго пытался убедить их ИТшника, что мол давай FreeBSD, или Ubuntu Serv. на этот комп... но тот ни в какую.
И я собственно подумал, что надо просто разобраться, ведь уж такую, казалось бы, простую операцию Windows XP должна уметь...
Вот разбираюсь я уже... м-м-м-м стыдно.
Что уже сделано... во первых интернет пущен через NAT из консоли при помощи netsh
netsh routing ip nat install
ребутимся, локалка от интернета отваливается, несмотря на то что настройки адаптеров и ICS все остались без изменений (Сделать подключение доступным... и т.д.) настораживает ну да ладно.
netsh routing ip nat add interface "InternetConnection" full
netsh routing ip nat add interface "CorpNetworkConnection" private
netsh routing ip dnsproxy install
netsh routing ip dnsproxy set interface name="InternetConnection" mode=enable
ребутимся, и локалка снова радостно ест интернет, NAT и dnsproxy поднялись, все кажется замечательным и близким к завершению, т.к. я уже вычитал в "мане по netsh" про nat portmapping
и его рефф говорит что именно то что нам нужно:
add portmapping [InterfaceName=]имя_интерфейса [proto=]{tcp | udp} [publicip=]{IP-адрес | 0.0.0.0} [publicport=]целое [privateip=]IP-адрес [privateport=]целое
поехали (пусть для примера наш внешний ip будет 11.111.11.111, а пробросить надо на 192.168.0.100).
netsh routing ip nat portmapping InterfaceName="InternetConnection" proto=tcp
publicip=11.111.111.11 publicport=8000 privateip=192.168.0.100 privateport=8000
ни хрена, пишет:
Статическое сопоставление портов с 11.111.11.111 / 8000 по 192.168.0.100 / 8000 требует чтобы 11.111.11.111 было частью настраиваемого адресного диапазона...
бла-бла-бла установите значение publicip в 0.0.0.0
лады (хотя интересно как будет разрешаться 0.0.0.0 для двух интерфейсов, ну да пробуем)
netsh routing ip nat portmapping InterfaceName="InternetConnection" proto=tcp
publicip=0.0.0.0 publicport=8000 privateip=192.168.0.100 privateport=8000
и тишина... обращение "извне" к 11.111.11.111:8000 по прежнему результата не дают
ребутимся
и... Всё пропало - страна в опасности !!! в локалке нет интернета, да и редиректа "извне" тоже нет.
И тут руки начинают опускаться.
Обращаюсь к коллективному сознанию за помощью.
PS: пытался еще что-то сделать через portproxy v4tov4 ... такая же безуспешно, да и вообще не понял что это.
Первый раз сталкиваюсь с реализацией подобного по Windows XP... но чуется аки я где-то рядом.
И так:
Главный герой - Windows XP Pro с двумя сетевыми адаптерами один глядит в циску провайдера и ест оттудова интернет(назовем его InternetConnection), второй глядит в локалку населенную "Маздаями" всех мастей:(XP Pro, XP Home, Vista, Win 7 Pro, назовем его CorpNetworkConnection) у локалочки имеется свой контроллер домена w2k3 R2, но его аки шлюз использовать категорически не хотят (забудем о его существовании), так что тяжелое бремя шлюза легло на плечи нашего главного героя.
Так вот, работало у них все следующим образом (ICS это называется насколько я понимаю) : InternetConnection прописан статический IP выданный провайдером, его шлюз, DNS и т.д. , "Сделать это подключение доступным..." для CorpNetworkConnection, сам CorpNetworkConnection естественно обратился в 192.168.0.1 / 255.255.255.0 и смотрит в коммутатор.
И все в общем то работало. Но однажды им понадобилось пробросить порт н/п 8000 на 8000 порт одного из участников локальной сети,
те кто все это затеял, им возьми да и скажи, что проблемм не будет, заходите мол в свойства InternetConnection, на вкладке "Дополнительно", клацаете по "Параметры"
откроется окошечко в котором будет предложено настроить службы локальной сети для пользователей интернета (DNS, DHCP и т.д.) там клацаете "Добавить", IP-шник той самой машины
куда требуется провести 8000 порт, сам порт соответственно 8000 в полях "Внешний порт..." и "Внутренний порт"... И ...
Баста !!! ничего не заработало... при обращении из интернета на статический-ip:8000 ничего не происходит.
И так, и так они прыгали вокруг этих параметров... ну и собственно проблема досталась мне по знакомству, я долго пытался убедить их ИТшника, что мол давай FreeBSD, или Ubuntu Serv. на этот комп... но тот ни в какую.
И я собственно подумал, что надо просто разобраться, ведь уж такую, казалось бы, простую операцию Windows XP должна уметь...
Вот разбираюсь я уже... м-м-м-м стыдно.
Что уже сделано... во первых интернет пущен через NAT из консоли при помощи netsh
netsh routing ip nat install
ребутимся, локалка от интернета отваливается, несмотря на то что настройки адаптеров и ICS все остались без изменений (Сделать подключение доступным... и т.д.) настораживает ну да ладно.
netsh routing ip nat add interface "InternetConnection" full
netsh routing ip nat add interface "CorpNetworkConnection" private
netsh routing ip dnsproxy install
netsh routing ip dnsproxy set interface name="InternetConnection" mode=enable
ребутимся, и локалка снова радостно ест интернет, NAT и dnsproxy поднялись, все кажется замечательным и близким к завершению, т.к. я уже вычитал в "мане по netsh" про nat portmapping
и его рефф говорит что именно то что нам нужно:
add portmapping [InterfaceName=]имя_интерфейса [proto=]{tcp | udp} [publicip=]{IP-адрес | 0.0.0.0} [publicport=]целое [privateip=]IP-адрес [privateport=]целое
поехали (пусть для примера наш внешний ip будет 11.111.11.111, а пробросить надо на 192.168.0.100).
netsh routing ip nat portmapping InterfaceName="InternetConnection" proto=tcp
publicip=11.111.111.11 publicport=8000 privateip=192.168.0.100 privateport=8000
ни хрена, пишет:
Статическое сопоставление портов с 11.111.11.111 / 8000 по 192.168.0.100 / 8000 требует чтобы 11.111.11.111 было частью настраиваемого адресного диапазона...
бла-бла-бла установите значение publicip в 0.0.0.0
лады (хотя интересно как будет разрешаться 0.0.0.0 для двух интерфейсов, ну да пробуем)
netsh routing ip nat portmapping InterfaceName="InternetConnection" proto=tcp
publicip=0.0.0.0 publicport=8000 privateip=192.168.0.100 privateport=8000
и тишина... обращение "извне" к 11.111.11.111:8000 по прежнему результата не дают
ребутимся
и... Всё пропало - страна в опасности !!! в локалке нет интернета, да и редиректа "извне" тоже нет.
И тут руки начинают опускаться.
Обращаюсь к коллективному сознанию за помощью.
PS: пытался еще что-то сделать через portproxy v4tov4 ... такая же безуспешно, да и вообще не понял что это.