UNC-путь не доступен через некоторое время

668
grunt

У меня есть машина, на которой запущено около 100 процессов, каждый из которых снова и снова обращается к удаленному UNC-пути (к общему ресурсу samba) для чтения файлов. Время от времени UNC (\ server-ip \ share) становится недоступным только для этой машины. Telnet также перестает работать. Пинг до недоступного UNC ip работает. Единственным решением здесь является перезагрузка этой машины.

netstat -na не выявляет каких-либо серьезных проблем, например, слишком много зависших соединений или ожиданий зависания.

Поскольку путь подается на процессы, подключенный диск не может быть легко использован (во всяком случае, не уверен, что это может иметь эффект).

ОС - это сервер Windows 2008 Enterprise R2.

Любые предложения приветствуются.

1
Что-нибудь в захвате пакета, например Wireshark, когда он выходит из строя? Может быть, фильтр "smb или smb2"? HelpingHand 7 лет назад 0
Почему вы убиваете процессы? Обычно это не очень хорошая идея, так как мешает нормальной очистке при выходе из процесса. DavidPostill 7 лет назад 0

1 ответ на вопрос

0
JohnnyVegas

На сервере 2008r2 общие сетевые ресурсы UNC или иным образом отключаются по умолчанию через определенное время.

Использование regedit

Перейдите в HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ lanmanserver \ parameters

найти значение autodisconnect - если его там нет, создайте новый REG_DWORD с именем autodisconnect

Отредактируйте / измените значение на шестнадцатеричное и введите ffffffff, затем ок.

ПРИМЕЧАНИЕ. Сеанс на стороне клиента автоматически отключается, когда время простоя длится больше, чем продолжительность, заданная в KeepConn. Поэтому сеанс отключается в соответствии с более коротким заданным значением продолжительности между AutoDisConnect и KeepConn. Чтобы изменить время ожидания на стороне клиента во время соединения UNC, укажите произвольное время в KeepConn.

Найдите и щелкните следующий ключ в реестре: HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ lanmanworkstation \ parametersValue: KeepConn Тип данных: REG_DWORD Диапазон: от 1 до 65535 (с) Значение по умолчанию: 600 с = 10 минут

Вы также можете использовать 'net config server / autodisconnect: 65535', но у меня были лучшие результаты с реестром.

Похоже, что это связано с подключенным диском, который после тайм-аута отображает красный X, но при двойном щелчке мгновенно подключается. В моем случае (без привязки диска) конкретный unc не будет переподключен, даже если набрать unc в новом окне проводника. grunt 7 лет назад 0
Следующей вещью, которую я бы попробовал, была бы другая сетевая карта - или обновление драйвера для карты. Слышал, что такое происходит со многими ранними чипсетами Realtek. JohnnyVegas 7 лет назад 0
Кроме того, что если вы использовали IP вместо servername в строке UNC? JohnnyVegas 7 лет назад 0