masyaka
03-09-2012, 12:53
Доброго времени суток!
Есть маршрутизатор производителя D-link модель DFL-800 и в локальной сети есть вебсервер. На маршрутизаторе работает NAT (PAT). При обращение к вебсерверу из локальной сети по частному ip адресу допустим 192.168.0.5 вебсервер доступен. При обращении из локальной сети по доменному имени или даже по публичному адресу допустим 215.30.31.32 вебсервер не доступен. Не могу понять почему так происходит. Ниже в общих чертах представлен сценарий по которому происходит обращение к вебсерверу как это представляется мне. Согласно моему сценарию все должно работать :) но на практике то этого не происходит, значит я не правильно представляю себе сценарий.
1.С рабочей станции в локальной сети происходит обращение к вебсерверу по доменному имени example.ru.
2.DNS сервер находящийся у нас в локальной сети возвращает рабочей станции публичный ip адрес допустим 215.30.31.32.
3.С рабочей станции отправляется пакет 192.168.0.30:2560 => 215.30.31.32:80 на маршрутизатор.
4.Этот пакет приходит на маршрутизатор в котором работает NAT(PAT) и соответственно маршрутизатор изменяет заголовок пакета с 192.168.0.30:2560 => 215.30.31.32:80 на 215.30.31.32:2560 => 215.30.31.32:80
5.Т.к. в пакете адрес назначения публичный этот пакет моим маршрутизатором отправляется на шлюз(маршрутизатор) провайдера, а шлюз провайдера отправляет это пакет обратно на мой маршрутизатор и если настроен проброс портов то вебсервер должен быть доступен.
Помогите мне пожалуйста разобраться где я допускаю ошибку?
P.S.
Решение я уже нашел, решение называется nat loopback правда не пойму пока как его настроить, но вопрос мой заключается именно в том почему на мой взгляд все должно работать и без nat loopback а на практике не работает.
Есть маршрутизатор производителя D-link модель DFL-800 и в локальной сети есть вебсервер. На маршрутизаторе работает NAT (PAT). При обращение к вебсерверу из локальной сети по частному ip адресу допустим 192.168.0.5 вебсервер доступен. При обращении из локальной сети по доменному имени или даже по публичному адресу допустим 215.30.31.32 вебсервер не доступен. Не могу понять почему так происходит. Ниже в общих чертах представлен сценарий по которому происходит обращение к вебсерверу как это представляется мне. Согласно моему сценарию все должно работать :) но на практике то этого не происходит, значит я не правильно представляю себе сценарий.
1.С рабочей станции в локальной сети происходит обращение к вебсерверу по доменному имени example.ru.
2.DNS сервер находящийся у нас в локальной сети возвращает рабочей станции публичный ip адрес допустим 215.30.31.32.
3.С рабочей станции отправляется пакет 192.168.0.30:2560 => 215.30.31.32:80 на маршрутизатор.
4.Этот пакет приходит на маршрутизатор в котором работает NAT(PAT) и соответственно маршрутизатор изменяет заголовок пакета с 192.168.0.30:2560 => 215.30.31.32:80 на 215.30.31.32:2560 => 215.30.31.32:80
5.Т.к. в пакете адрес назначения публичный этот пакет моим маршрутизатором отправляется на шлюз(маршрутизатор) провайдера, а шлюз провайдера отправляет это пакет обратно на мой маршрутизатор и если настроен проброс портов то вебсервер должен быть доступен.
Помогите мне пожалуйста разобраться где я допускаю ошибку?
P.S.
Решение я уже нашел, решение называется nat loopback правда не пойму пока как его настроить, но вопрос мой заключается именно в том почему на мой взгляд все должно работать и без nat loopback а на практике не работает.