|
|
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
Есть следующий код (вставлен в тело main): Код: java 1. 2. 3. 4. 5. 6. 7. В результате его работы получаю следующий вывод в консоль: System.err10.0.161.152; Ellapsed time: 9090 ms 10.0.161.152; Ellapsed time: 9094 ms В DNS действительно такой записи нет: cmdnslookup 10.0.161.152 Server: xxx.xxxx.ru Address: x.x.x.x DNS request timed out. timeout was 2 seconds. *** Request to xxxx.xxxx.ru timed-out Вопрос - почему не происходит кэширования негативного ответа? Или я неправильно понимаю смысл данного параметра? (поведение одинаковое на J9VM и на HotSpot Java 8) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2015, 18:14 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
У меня работает в Java 8 Код: java 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2015, 18:25 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
just_vladimir, Хотя, нет. Картина не зависит от значения, даже если отключить кэш, то же самое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2015, 18:27 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
Похоже что это из-за reverse lookup. Потому что ты сразу IP туда вбиваешь. Я попробовал с несуществующим именем, тогда есть разница. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2015, 18:32 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, а если пишете nslookup в cmd? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2015, 18:33 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
just_vladimirBlazkowicz, а если пишете nslookup в cmd? Не понял вопроса. Первичная задача DNS это находить IP по имени хоста. Обратная задача, находить домена по IP адресу она не на всех серверах настроена и обладает кучей нюансов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2015, 18:37 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, интересует обратная задача reverse lookup, вопрос в том, какой будет ответ в вашем окружении, если напишете в винде в cmd.exe строчку nslookup несуществующий_ип_адрес ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2015, 18:41 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
just_vladimir, Код: java 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2015, 18:43 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, а ответ получаете так же моментально? А так действительно, посмотрел по реализации InetAddress и там кэшируется только forward lookup'ы, а reverse (по сути вызов getCanonicalHostName) всегда лезет в nameService, собственно на нем и висит 4 секунды, пока не выкинется Exception. Видимо надо решать настройками ОС. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2015, 19:13 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
Если вдруг, кто столкнется, то в общем разобрал ситуацию. Запустил ProcMon, увидел, что в native стеке вызывается gethostbyaddr function из Ws2_32.dll ( https://msdn.microsoft.com/ru-ru/library/windows/desktop/ms738521(v=vs.85).aspx), про которую написано в MSDN, что она еще способна возвращать NetBIOS name и действительно его отключение мне помогло. Ответ получаю в пределах 10 ms. При этом MSDN говорит, что кошерно пользоваться функцией getnameinfo https://msdn.microsoft.com/ru-ru/library/windows/desktop/ms738532(v=vs.85).aspx ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2015, 20:56 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
just_vladimirВидимо надо решать настройками ОС.Нет - не надо делать обратных запросов (адрес -> имя) кроме тех случаев, когда вы точно знаете что делаете. Если вы точно знаете, что делаете, то случаев таких и не остаётся. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2015, 09:03 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovНет - не надо делать обратных запросов (адрес -> имя) кроме тех случаев, когда вы точно знаете что делаете. Если вы точно знаете, что делаете, то случаев таких и не остаётся. Отлично, так и напишу в саппорт IBM, как думаете в следующем фикс паке на WebSphere Portal уберут эти вызовы? )) В своем коде таких вызовов не практикую. А если серьезно, то похоже это нюанс работы с InetAddress, очень походит на то, что если хранить имя хоста не строкой, а этим классом, то при создании мы будем иметь форвард, а при любых последующих вызовах методов вида getXXXName он каждый раз будет честно выполнять реверс запросы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2015, 10:32 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
just_vladimirА если серьезно, то похоже это нюанс работы с InetAddress, очень походит на то, что если хранить имя хоста не строкой, а этим классом This class represents an Internet Protocol (IP) address . Как вы собрались "хранить имя хоста" в классе, который хранит IP-адрес??? Вы вообще в курсе, что "имя -> адрес -> имя" может, а очень часто - будет выдавать совсем не то, что было подано на вход? Это даже если не касаться ситуации "одно имя разрешается в несколько адресов". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2015, 12:35 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovКак вы собрались "хранить имя хоста" в классе, который хранит IP-адрес??? Вы вообще в курсе, что "имя -> адрес -> имя" может, а очень часто - будет выдавать совсем не то, что было подано на вход? Это даже если не касаться ситуации "одно имя разрешается в несколько адресов". Смысл в том, что даже если в InetAddress тупо скормить IP, всё равно получишь DNS lookup. Я натыкался на такое недавно. Сейчас поищу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2015, 12:41 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
just_vladimir, В Guava есть классы для хранения адресов и имён, которые DNS не трогают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2015, 12:43 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2015, 12:50 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
BlazkowiczСмысл в том, что даже если в InetAddress тупо скормить IP, всё равно получишь DNS lookup. Я натыкался на такое недавно. Сейчас поищу. Не. Похоже я гоню. Вроде нормально работает. Странно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2015, 12:56 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovКак вы собрались "хранить имя хоста" в классе, который хранит IP-адрес??? Вы вообще в курсе, что "имя -> адрес -> имя" может, а очень часто - будет выдавать совсем не то, что было подано на вход? Это даже если не касаться ситуации "одно имя разрешается в несколько адресов". Я ничего не собрался хранить, у меня проблема, что в IBM WebSphere Portal есть вызовы getCanonicalHostName, а в некоторых случаях даже по нескольку раз на каждое построение страницы. Basil A. Sidorov If this InetAddress was created with a host name, this host name will be remembered and returned; otherwise, a reverse name lookup will be performed По горячился, так себя ведет только getCanonicalHostName Blazkowiczjust_vladimir, В Guava есть классы для хранения адресов и имён, которые DNS не трогают. Ага, буду иметь в виду, если понадобится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2015, 13:01 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
just_vladimirв IBM WebSphere Portal есть вызовы getCanonicalHostNameВызовы делаются на собственные адреса (имена) или для адресов клиента? Если первое, то правильно настроенный DNS - must have. Тогда и проблем не будет. Если второе - то это клиника и надо заводить багу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2015, 13:22 |
|
||
|
Параметр negative.ttl не работает
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorovjust_vladimirв IBM WebSphere Portal есть вызовы getCanonicalHostNameВызовы делаются на собственные адреса (имена) или для адресов клиента? Если первое, то правильно настроенный DNS - must have. Тогда и проблем не будет. Если второе - то это клиника и надо заводить багу. второе ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2015, 13:24 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39127654&tid=2124556]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
176ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 254ms |
| total: | 536ms |

| 0 / 0 |
