Инфо

середа, 27 жовтня 2010 р.

Как устранить конфликт IPv4 с IPv6? Требуются умы!

В кои-то веки... (хотя, вообще, наверное, впервые) обращаюсь к читателям за экстренной помощью! Вторглась в мой дом беда... :) Срочно нужна помощь профессионала в Windows 7! Поэтому если ты от этого далёк, эта статья не для тебя.

В общем, стоят у меня одинаковые лицензионные Windows 7 Professional на нетбуке и ноутбуке. Ноут был в ремонте, поэтому первой проблема всплыла на Нетике. Мучился, искал решение - не нашел. Тогда поставил виртуалку с Windows XP и работал на ней. С возвращением Нотика, обрадовался, что на нем такой проблемы нету. Но вчера появилась она и здесь.

В один прекрасный день перестали открываться сайты http://localhost и http://127.0.0.1 (хотя до этого открывались). Apache и MySQL службы запущены. После этого пробовал несколько разных сборок xampp и Denwer. По ним и опишу симптомы.

Итак, первое - Denwer (ещё вчера работал, сегодня - нет; восстановление системы не помогло).

В netstat, связанное с портом Apache (80) и MySQL (3306) только это:
Активные подключения
Имя Локальный адрес Внешний адрес Состояние
TCP 127.0.0.1:80 0.0.0.0:0 LISTENING
TCP 127.0.0.1:3306 0.0.0.0:0 LISTENING

Сайты localhost и 127.0.0.1 не открываются, слинкованные через hosts домены также не работают.

Теперь выключим Denwer и запустим xampp. В netstat появляется:
Активные подключения
Имя Локальный адрес Внешний адрес Состояние
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING
TCP 0.0.0.0:3306 0.0.0.0:0 LISTENING
TCP [::]:80 [::]:0 LISTENING
TCP [::1]:80 [::1]:49553 ESTABLISHED

При этом сайт http://localhost работает! Но не работает http://127.0.0.1 (именно так, а не наоборот - для тех, кто начал грешить на hosts).

Понял также, что все порты других программ, открываемые для [::] работают, а для 127.0.0.1, 0.0.0.0 и подобных - нет. То есть, легко заметить, что проблема так или иначе связана с конфликтом IPv4/IPv6 протоколов. Но как её устранить?

На заметку. Также перестал работать веб-интерфейс Oracle локального сервера (он находится по недоступному адресу http://localhost:8080/apex/). Java ME SDK тоже не запускается (ошибка какого-то коннекта - в общем ясно, что связано с этой же проблемой). Мой чат, написанный на третьем курсе, открывает порт 0.0.0.0:4512, но клиенты к этому порту подключиться не могут.



route print (при отключенных интернет-соединениях проблемы те же):
IPv4 таблица маршрута
===========================================================================
Активные маршруты:
Сетевой адрес Маска сети Адрес шлюза Интерфейс Метрика
127.0.0.0 255.0.0.0 On-link 127.0.0.1 306
127.0.0.1 255.255.255.255 On-link 127.0.0.1 306
127.255.255.255 255.255.255.255 On-link 127.0.0.1 306
224.0.0.0 240.0.0.0 On-link 127.0.0.1 306
255.255.255.255 255.255.255.255 On-link 127.0.0.1 306
===========================================================================
Постоянные маршруты:
Сетевой адрес Маска Адрес шлюза Метрика
0.0.0.0 0.0.0.0 192.168.1.10 По умолчанию
0.0.0.0 0.0.0.0 192.168.1.1 По умолчанию
===========================================================================

IPv6 таблица маршрута
===========================================================================
Активные маршруты:
Метрика Сетевой адрес Шлюз
1 306 ::1/128 On-link
1 306 ff00::/8 On-link
===========================================================================
Постоянные маршруты:
Отсутствует

С момента, когда всё работало, система установила критическое обновление: Definition Update for Windows Defender - KB915597 (Definition 1.93.468.0). Описание:
Install this update to revise the definition files used to detect spyware and other potentially unwanted software. Onse you have installed this item, it cannot be removed.

То есть, удалить его невозможно... Восстановление системы, как я уже сказал, с проблемой не справляется. Но, возможно, оно тоже не может удалить это обновление.

Не стесняйся - задавай наводящие вопросы в комментариях, высказывай предположения. Нужны хоть какие-то зацепки! Решение этой проблемы для меня катастрофически важно! HELP!!!

UPD: В этой теме спамеры не приветствуются. За неконструктивные ответы типа "...а зачем..." или "...не знаю..." - БАН! Имей совесть!

UPD (02.11): ping localhost
Обмен пакетами с PoStNotebook [::1] с 32 байтами данных:
Ответ от ::1: время<1мс
Ответ от ::1: время<1мс
Ответ от ::1: время<1мс
Ответ от ::1: время<1мс
Статистика Ping для ::1:
Пакетов: отправлено = 4, получено = 4, потеряно = 0
(0% потерь)
Приблизительное время приема-передачи в мс:
Минимальное = 0мсек, Максимальное = 0 мсек, Среднее = 0 мсек

По всей видимости, проблема сводится к тому, чтобы здесь было 127.0.0.1 вместо ::1 без редактирования hosts.

36 коментарів:

  1. Серёга, вот тут вроде как суппорт живёт от Мелкософта, попробуй задать вопрос там - https://support.microsoft.com/oas/default.aspx?gprid=14019&st=1&wfxredirect=1&sd=gn. У тебя ж лицензионная Вин7, как ни как, пусть подумают над твоей проблемой)

    ВідповістиВидалити
  2. Очень жаль, что не могу помочь автору блога в разрешении его проблемы, просто нет таких знаний. Но уверен, что добрые люди найдутся, и все наладится. Удачи!

    ВідповістиВидалити
  3. А зачем вообще его (Ipv6) было включать? Я его, как настраиваю, всегда вообще вырубаю — и всё нормально работает.

    ВідповістиВидалити
  4. A-lex, спасибо, попробую.

    Иван, спасибо, еще один подобный коммент только ради ссылки и бан тебе обеспечен.

    Константин, я вроде не писал, что я его включал. Тем не менее, этот этап тоже мной пройден. Включать я его не включал, а вот отключать пробовал. Как его выключить полностью? Пробовал по мануалам через редактор реестра... Всё равно. Отключается IPv6 только для определенного сетевого подключения (сетевой карты), но не для всей системы! А тут надо для всей, ведь даже без подключения к сети localhost должен работать.

    ВідповістиВидалити
  5. A-lex, общался только-что с техподержкой Microsoft. Действительно, неплохо. У них и чат есть. Удобно, как оказывается, я и не знал. Но вот вердикт Аудрюса из техподдержки: "Ваша проблема профессионального уровня, а мы можем помочь только с проблемами домашнего пользователя уровня". Проблема не решена! =(

    ВідповістиВидалити
  6. Попробуйте сделать чистую загрузку операционной системы.
    Win+R > msconfig
    На вкладке службы внизу поставьте галочку Не отображать службы майкрософт и нажмите кнопку отключить все
    На вкладке автозагрузка нажмите также кнопку отключить все.
    Применить и ОК. После этого перезапустите ноут.
    Если проблема не повториться, то скорее всего это настройки вашего софта.

    ВідповістиВидалити
  7. честно, я б их обматюкал... за что тогда берут деньги, лицензия то не мало стоит... если берут деньги за лицензию - пусть и поддержку оказывают нормальную...
    Попытайся написать ещё, авось попадёшь на другого оператора который что то да и скажет... =)

    ВідповістиВидалити
  8. Андрей, сделал всё по пунктам. Проверил - то же самое. Это проблему не решило...

    ВідповістиВидалити
  9. Что в логах apache2 при попытке отправить запрос к серверу?

    ВідповістиВидалити
  10. Ахаха )) чат бесполезен от Билла, пробовал, подобные ответы получал.

    Думаю, что проблема и вправду в Софте.

    ВідповістиВидалити
  11. UnFeeLing, вот полностью error.log Денвера. В access.log с момента последней нормальной работы ничего не записывалось.

    Григорий, давай по делу. В каком именно софте? Почему не смущает то, что при отключении всех служб проблема не пропадает?

    ВідповістиВидалити
  12. NameVirtualHost 192.168.1.1:80

    ServerName localhost
    DocumentRoot /home/localhost/www


    попробуйте переконфигурировать виртуальный хост таким образом, видимо проблема то что сервер теряется что и откуда ему брать и передавать на каком порту, почистите лог и опять попробуйте сделать такой же запрос

    ВідповістиВидалити
  13. и для справки SSL не может работать на нескольких виртуальных хостах

    ВідповістиВидалити
  14. UnFeeLing, не работает НЕ АПАЧ, а всё, что обращается к IPv4-портам локального компьютера! Как, прикажете, переконфигурировать тот же Oracle? :D

    ВідповістиВидалити
  15. [Fri Oct 29 00:28:38 2010] [warn] Init: SSL server IP/port conflict: test1.ru:443 (/usr/local/apache/conf/vhosts.conf:177) vs. Tools.localhost:443 (/usr/local/apache/conf/vhosts.conf:200)

    это означает что конфликтует test1.ru:443 и Tools.localhost:443

    usr/local/apache/conf/vhosts.conf

    этот файлик в студию пожалуйста

    ВідповістиВидалити
  16. Вот vhosts.conf, он практически стандартный для денвера (и строится сам при запуске денвера в автоматическом режиме). Только еще раз повторяю: апач к проблеме не причастен. Он был только для проверки дополнительных условий проблемы.

    ВідповістиВидалити
  17. SSLEngine on

    уберите, либо вообще попробуйте оставить один виртуальный хост, (так для справки, SSL нужен вообще?)

    ВідповістиВидалити
  18. Ну спасибо за помощь, UnFeeLing. SSL если и нужен, то только когда будет работать всё остальное :) По теме поста - мож еще идеи появились?

    ВідповістиВидалити
  19. Что-то подобное у меня было. Поставил Денвер 3 и перестало работать (со вторым все работало). Порылся на форуме Денвера и отключил какую-то службу MS, все заработало. А вот какую - не помню. Рад бы помочь, но не могу вспомнить.

    ВідповістиВидалити
  20. weracruz, Службы IIS выключены, Skype не запущен, если ты о том, что может прослушивать порт 80. Т.о. его точно никто не прослушивает. Но попытка хорошая. Спасибо, продолжай в том же духе!

    UPD! Обновил новость, дополнив данными ответа на "ping localhost". Вдруг еще у кого что созреет...

    ВідповістиВидалити
  21. подобных проблем никогда не было. проверь файл host и порезолвь адреса. Думаю дело как здесь пишут вовсе не с апачей. Кстати какая версия денвера ?

    ВідповістиВидалити
  22. Если б же было всё так просто - с hosts или denwer... =( Но, увы... Баг так глубоко в недрах системы, что даже майкрософтовцы предложили перебивать винду.

    ВідповістиВидалити
  23. Пробовал ли сбросить настройки TCP/IP? Как сделать описано например тут - http://www.windowsreference.com/windows-vista/reset-tcpip-in-windows-7-and-windows-vista/

    И что получается в результате попытки сделать telnet 127.0.0.1 80 ?

    ВідповістиВидалити
  24. Molse, спасибо, отличная попытка, сделал сброс логов, но, увы... =( А телнета в Windows 7 нет.

    ВідповістиВидалити
  25. Есть, включается через панель управление - программы и компоненты - включение и отключение компонентов Windows - клиент telnet поставить чекбокс.

    ВідповістиВидалити
  26. Да, и ещё. В Event Viewer есть какие-то сообщения об ошибках?

    ВідповістиВидалити
  27. я всегда отрубаю 6-ой протокол)

    ВідповістиВидалити
  28. Попробуй отключить Windows Defender в настройках программы (на панели управления Windows Defender или Защитник Windows). После этого отключить службы IP Helper, Security Center и Windows Defender. Есть подозрение, что дело именно в них.

    ВідповістиВидалити
  29. Спасибо, SSU. "Защитник Windows", "Центр обеспечения безопасности" и "Вспомогательную службу IP" отключил. Но разницы никакой не увидел... =(

    ВідповістиВидалити
  30. Пока могу резюмировать, что ни Win7, ни ipv6 здесь ни при чем. Удалось повторить ситуацию на winXP - после накатывания пака обновлений перестали отвечать Oracle на 127.0.0.1:8080 и Apach на 127.0.0.1:80. Разбираюсь...

    ВідповістиВидалити
  31. Спасибо, SSU! Отлично! Эгоистично радуюсь, что я теперь не один! =)

    ВідповістиВидалити
  32. Я с удивлением увидел, у себя эту проблему. Решил просто - открыл hosts и закомментил строчку
    localhost ::1

    После этого пинг на localhost стал ходить на 127.0.0.1 и все починилось :)

    ВідповістиВидалити
  33. sda, ага, вот все такие тупые, один ты умный. Извини конечно, но это первое, что я сделал. Более того, я прописал "127.0.0.1 localhost", пинг действительно стал ходить правильно, но на демонов это не влияет.

    ВідповістиВидалити
  34. Вывод один - не набо было ничего перенастраивать и обновлять. Как говорил мой учитель - Работает ?? Работает. Слава Богу что работает!

    ВідповістиВидалити
  35. Вывод делать рано - проблема-то не решена. Обновлялось само, кстати.

    ВідповістиВидалити
  36. сам не давно на 2008 server с похожим столкнулся, днс сервер всем говорил чтоб обращались к нему по ipv6 и записи в нем хоть удаляй хоть не удаляй
    http://support.microsoft.com/kb/929852/ru

    ВідповістиВидалити