>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Firefox http://forum.mozilla-russia.org/viewforum.php?id=4 >hosts не действует http://forum.mozilla-russia.org/viewtopic.php?id=7033 |
kAtremer > 19-12-2005 15:21:04 |
В файле WINDOWS\system32\drivers\etc\hosts прописаны несколько имён, все ведут на 127.0.0.1. При вводе "localhost" Firefox показывает localhost, по остальным адресам - ломится в инет. В настройках прописано "Не использовать прокси для:" localhost, 127.0.0.1. |
kAtremer > 19-12-2005 15:21:49 |
Так действуют и 1.0.7, и 1.5. |
Lynn > 19-12-2005 15:43:00 |
Ну так и пропишите дополнительные имена в список "не использовать прокси". |
kAtremer > 19-12-2005 15:52:55 |
А не логичнее ли, что если имена ведут на 127.0.0.1, и в настройках указано не использовать прокси для 127.0.0.1, то Firefox и не должен использовать прокси для этих имён? |
ladserg > 19-12-2005 17:35:53 |
kAtremer пишет
Нет, это аллогично, т.к. у каждого прокси свой DNS и свой hosts, которые могут быть недоступны пользователям сервера прокси. |
kAtremer > 27-12-2005 17:49:09 |
Вот эту сентенцию можно пояснить? Насколько я что-то понимаю в DNS и прокси, они между собой не связаны. А hosts - это вообще файлик в виндах и юниксах, с помощью которого можно назначить специальные ip некоторым доменам. Кстати, как у Firefox с поддержкой имён, прописанных в hosts в юниксах? там это вроде более распространённый инструмент, чем в виндах. |
ladserg > 27-12-2005 18:10:43 |
kAtremer пишет
Как не связаны? Прокси сам берёт IP из DNS и hosts, т.е. бразер говорит ему: "дай мне сайт www.site.ext", а прокси спрашивает у DNS какой IP у www.site.ext, окрывает соединение с www.site.ext берёт страницу и отдаёт её браузеру. kAtremer пишет
А ты прокси отключи на время, у тебя и под виндой всё заработает. |
kAtremer > 27-12-2005 18:24:11 |
Это само собой, но слова о "собственном DNS прокси-сервера" всё-таки неверны, это две отдельные службы.
Заработало. Это значит: FF вполне умеет определять ip-адреса этих имён из hosts, так почему бы не проверить их перед обращением к прокси, если он включен? |
ladserg > 27-12-2005 18:34:06 |
kAtremer пишет
Ну да, разные, ну и что, если прокси установлен на отдельном компе то и настройка там свои. kAtremer пишет
Нельзя, если каждый адрес проверять, то в демилитаризированной зоне ты получишь огромную задержку при обращении к сайтам в инете. |
kAtremer > 27-12-2005 18:43:22 |
Ну и что? Если есть стандартный механизм hosts'ов, значит FF должен уметь его использовать, независимо от настроек какого-то там прокси и задержек. Тем более что не вижу, откуда взяться задержкам: hosts -- механизм в той же операционной системе, в которой запущен браузер. |
kAtremer > 27-12-2005 18:43:47 |
Это что и к чему тут приплетено? |
ladserg > 27-12-2005 18:56:28 |
kAtremer пишет
??? Не понял вопроса. |
ladserg > 27-12-2005 18:58:41 |
kAtremer пишет
Что ж, вам видней, у меня на моём прокси увы это не так. kAtremer пишет
А прокси стоит на том же компе что и Firefox? |
kAtremer > 27-12-2005 19:02:10 |
hosts не имеет отношения к прокси. |
kAtremer > 27-12-2005 19:03:14 |
Что такое "демилитаризированная зона" и почему именно в ней я должен получить задержку? |
ladserg > 27-12-2005 19:04:13 |
kAtremer пишет
Да, вы правы, и поэтому при работе через прокси он и не учитывается. PS: и не должен учитываться. |
kAtremer > 27-12-2005 19:10:53 |
hosts - текстовый файл в юниксах, и почему-то в виндах тоже, который указывает доменные имена и соответствующие им ip. Обращения по этим именам должны идти на указанные ip независимо от того, что по поводу этих имён думают DNS в интернете. В том числе если я вообще не подключен к инету. "man hosts" говорит, что в давние времена /etc/hosts в юниксах использовался в качестве системы имён интернета, и файл должен был синхронизироваться с другими компьютерами. DNS заменила эту систему. Сейчас hosts обычно используется для тестирования сайтов без выкладывания в интернет. |
kAtremer > 27-12-2005 19:13:13 |
Если кто-нибудь знает, hosts -- стандартный механизм или нет, скажите. А если нет, его поддежка всё равно не помешала бы. |
ladserg > 27-12-2005 19:17:08 |
kAtremer пишет
Демилитаризированная зона (DMZ) это часть сети закрытая фаерволом или брандмауером от остальных сетей, в том числе и от интернета. Т.е. из вне в эту сеть никак не попасть. Для доступа из DMZ к сервисам во внешних сетях используются шлюзы, т.е. так называемые, программы-посредники, на вроде прокси. Так строятся все нормальные локальные сети. Программа обращаясь к какому-либо серверу по имени делает сначала запрос к DNS, ждет некоторое время, затем если сервер недоступен то выдает сообщение об ошибке. DNS - тоже программа, она тоже при трансляции адреса ищет ip до тех пор пока не поймет, что такого домена не существует. Если домен существует (DNS стоит на сервере с прокси) то IP адрес успешно будет получен программой, и программа начнет ломиться по указанному адресу. Но т.к. доступ в DMZ во вне ей закрыт, то она будет ждать, ждать, долго ждать, пока сервер ей не ответит, а когда до неё дойдет, что указанный адрес недоступен, то пройдёт раздражительно немало времени. |
ladserg > 27-12-2005 19:18:45 |
kAtremer пишет
И всё таки, прокси стоит на том же компьютере, где лежит hosts? |
kAtremer > 27-12-2005 19:22:47 |
нет |
ladserg > 27-12-2005 19:24:45 |
kAtremer пишет
Тогда он не будет учитываться, и не должен. Все адреса транслирует прокси. |
Azathoth > 27-12-2005 20:05:23 |
Могу объяснить ситуацию, которая по идее должна решаться с локальным hosts, но не решается в FF. Допустим имеется сервер за проксей, на нем поднят виртуальный хостинг, но по определенным причинам будущее предполагаемое доменное имя не прописано в DNS. Зато оно прописано в hosts на самом сервере и web-сервер это устраивает. Нам надо получить доступ к web-ресурсу на этом виртуальном хостинге через прокси. Педположим что hosts на компьютере с прокси мы настроить не можем, а вот на рабочей машине - запросто, что мы и делаем. Эти манипуляции мы вынуждены делать потому, что на этот хост можно попасть лишь указав доменное имя в URL'е http запроса, по ip сервера мы на этот хост никак не попадем, т.к. web-сервер будет выдавать страничку главного хоста, не виртуального. Но манипуляции с hosts ни к чему не приводят при настроеном прокси, они просто не учитываются (не можем получить ip для соединения с сервером), а при отключенном прокси мы не имеем вообще никакого способа добраться до нужного сервера (зато можем узнать его ip). Получается замкнутый круг. |
Azathoth > 27-12-2005 20:10:07 |
ladserg
Правильно, транслирует. Правда и тут ситуация не однозначная... Если в локальной сети нет DNS сервера, а доступ до провайдера идет через прокси, то до DNS сервера провайдера добраться можно только через прокси... |
ladserg > 27-12-2005 20:16:49 |
Да, так оно и есть, если прокси доставляет именно то ресурс, URL которого запрашивается, т.е. при запросе:
Он попытается добыть именно http://www.domain.ext/index.htm. Допустим FireFox знает ip этого www.domain.ext, тогда он тупо скажет прокси: "Дай мне ресурс http://01.01.01.01/index.htm" и прокси конечно полезет брать именно этот ресурс, но как заставить прокси обращаться к ресурсу http://www.domain.ext/index.htm по определенному ip адресу я не знаю. |
ladserg > 27-12-2005 20:18:30 |
Athathoth пишет
Да вы что все сговорились, что ли. Прокси спрашивает ip адрес у DNS, у какого DNS спрашивать адрес зависит от настроек сервера. |
Azathoth > 27-12-2005 20:22:44 |
ladserg
Не совсем так. FireFox просит прокси соеденить его с ip 01.01.01.01 по такому-то (например 80) порту (на транспортном уровне, по протоколу TCP), а http://www.domain.ext/index.htm уже передается внутри пакета с запросом на прикладном (HTTP), более высоком уровне. |
ladserg > 27-12-2005 20:24:42 |
Athathoth пишет
По моему прокси так не может. |
Azathoth > 27-12-2005 20:26:55 |
ladserg
Как это не может, когда трансляция ведется на уровне tcp или udp Добавлено: |
Azathoth > 27-12-2005 20:29:03 |
А TCP не в курсе кто такой HTTP и адрес http://my.domen.ru для него не понятен. |
Azathoth > 27-12-2005 20:46:10 |
Не, я всетаки не до конца прав. Точнее в данном случае больше не прав чем прав . Ведь часто используется Squid, а он как раз HTTP прокси, и он разворачивает все запросы до уровня HTTP, а значит и ресолвинг он должен производить.... Но в отношении Socks или элементарного NAT получается по описанному мною выше. |
Sanscho > 28-12-2005 13:01:45 |
Нормальное поведение браузера и др. - смотреть сначала в hosts потом в DNS. Локальные ресурсы должны быть прописаны в списке исключений для прокси. |
smakarov > 21-06-2006 11:08:39 |
Актуально. Клиент icq имеет настройку "Использовать DNS на прокси". Я хочу аналогичную настройку в браузере. Почему-то ни в одном из браузеров большой тройки такой настройки нет! Т.е. хочется чтобы клиент сам решал что ему делать с этим адресом (пропускать в прокси или нет). Есть масса примеров когда трафик дифференцируется провайдером (интернет, городская точка обмена, внутренний), а все DNS-имена невозможно указать в качестве исключений (просто можешь не знать их, зато знаешь диапазоны IP типа 194.194.0.0/16). Т.о. если после разрешения DNS адрес попадает в исключения, то браузер сам устанавливает соединение с сервером по найденному IP. Если адрес предназначен для прокси, то идет обращение через прокси в первоначальном виде, без указания IP типа "GET http://forum.mozilla.ru/post.php?tid=7033 1.0". Может всетаки есть такая настройка в браузере? |
Unghost > 23-06-2006 01:45:48 |
smakarov |
smakarov > 23-06-2006 07:10:08 |
Unghost пишет
на сколько я понимаю эта настройка касается SOCKS прокси (да и по-умолчанию = false). Нужна подобная настройка для HTTP. |