Проблемы при наличии двух сетевых карт на сервере

В некоторых случаях могут происходит странные ошибки, связанные со стабильностью работы платформы 1С:Предприятие 8.

Одной из рекомендаций является понизить приоритет протокола ipv6 или выключить его совсем.

В ряде случаев эти ошибки обусловлены тем, что клиент запрашивает у сервера его адрес, а сервер вместо адреса в формате IPv4 вида 192.168.1.2 возвращает адрес в формате IPv6 в формате вида ::1 или fe80::e168:38a1:5a4d:d271%40 (адреса взяты для примера, ключевое там — много групп цифр, разделённых вместо точек двоеточиями). Увидеть это можно, выполнив в командной строке команду ping servername где вместо servername надо подставить имя своего сервера. Если ответ будет в формате IPv6 — ваш сервер тоже может быть подвержен такой проблеме.

Предлагалось решение отключить протокол IPv6 полностью, решений приводилось два — полное отключение протокола IPv6 полностью, и занесение IP-адреса сервера в файл hosts. Первое решение может быть неудобно тем, что как минимум требует перезагрузить сервер, второе может быть неудобно или даже неработоспособно в случае нахождения сервера в нескольких подсетях одновременно (например, несколько сетевых карт).

А вот теперь сообщаем более технологичное решение: просто повысить приоритет протокола IPv4 над протоколом IPv6, тем не менее сохранив работоспособность IPv6. Решение не требует перезагрузки, вступает в действие моментально. Нужно открыть командную строку в режиме администратора, и выполнить там две команды:

netsh interface ipv6 set prefix ::/96 60 3 netsh interface ipv6 set prefix ::ffff:0:0/96 55 4

Всё, работает! Проверим на примере «чистой» Windows 2012 Server (жирным выделены команды, дальше в сокращённом виде приводится ответ операционной системы):

ping server_test Обмен пакетами с server_test [fe80::21c0:ff89:967f:955a%19] с 32 байтами данных: Ответ от fe80::21c0:ff89:967f:955a%19: время<1мс …

Итак, возвращается адрес в формате IPv6 (fe80::21c0:ff89:967f:955a%19).Применим наше лекарство:

netsh interface ipv6 set prefix ::/96 60 3 ОК.

netsh interface ipv6 set prefix ::ffff:0:0/96 55 4 ОК.

Снова проверим ping:

ping server_test Обмен пакетами с server_test [192.168.1.5] с 32 байтами данных: Ответ от 192.168.1.5: число байт=32 время<1мс TTL=128 …

Как видим — результат резко изменился в нужную нам сторону, стал возвращаться адрес 192.168.1.5. Теперь проверим, что по адресу в формате IPv6 сервер по-прежнему пингуется, и мы ничего не сломали

ping fe80::21c0:ff89:967f:955a%19 Обмен пакетами с fe80::21c0:ff89:967f:955a%19 по с 32 байтами данных: Ответ от fe80::21c0:ff89:967f:955a%19: время<1мс …

P.S. в некоторых случаях если команды не помогли, то выполните дополнительную команду: netsh interface ipv6 set prefix ::/96 1 3

Всё работает.

Предыдущая запись Долго открывается конфигуратор 1С Следующая запись Распечатываем потерянный чек и Z-отчет

Оцените статью
Информационный ресурс для любителей компьютеров и IT технологий