У меня есть клиент, у которого есть виртуальная машина Ubuntu 20.04, работающая внутри NAS-сервера qNAP, обеспечивающая функции управления информацией для клиентов Windows 10.Виртуальная машина присоединена к их домену, а сервер qNAP — нет. Сервер NAS используется только как удобное место для запуска виртуальной машины. Виртуальная машина предоставляет гораздо больше функций, чем устройство NAS для этого клиента, подробности которого немного сложны и требуют больше места, чем реально позволяет этот форум. (Буду рад обсудить это с кем-нибудь на стороннем канале...)
Эта конфигурация успешно работала в течение нескольких месяцев без проблем до прошлой пятницы. Эти серверы NAS стали мишенью банды вымогателей, поэтому qNAP решила принудительно обновить свою ОС NAS. Наверное, не лучший подход, но так получилось. Затем я подключился к их системе и обновил виртуальную машину Ubuntu. Затем было обновлено вышележащее программное обеспечение. Оглядываясь назад, можно сказать, что обновлять все сразу было не очень хорошей идеей, но в нашей лаборатории это сработало. Однако тут-то и началось самое интересное...
Программное обеспечение, работающее на виртуальной машине, имеет клиентское программное обеспечение Windows, которое обновляется через общий ресурс Samba, сопоставленный с буквой диска в системах Windows 10. Загруженный файл .exe содержал странные ошибки и не запускался. Файл оказался поврежденным. Я снова вручную скопировал файл из общей папки CIFS на виртуальной машине, и снова произошел сбой, но с другой ошибкой. Каждый раз, когда я копировал файл, размер был правильным, но сбой происходил по-разному. Затем я загрузил копию прямо на машину с Windows, минуя виртуальную машину, и все было хорошо. Как видите, есть много мест, на которые можно указать пальцем, но вот что я сделал, пытаясь изолировать проблему:
- Провел некоторое тестирование копирования со следующими результатами.
- Загрузка файлов практически любого размера (от нескольких байтов до 1 ГБ) корректно загружается на виртуальную машину.
- Загрузка файлов происходила по-разному в зависимости от их размера. Небольшие файлы размером в несколько байт загружаются корректно. Файлы размером с исполняемый файл (~700k) были повреждены. Файлы большего размера (несколько МБ) давали ошибку Windows 0x8007003B. «Неожиданная сетевая ошибка» Google, похоже, указывает на проблему с брандмауэром Windows, который отключен, или на мешающий антивирус, который был удален. Все еще получаю ошибку.
- Просмотрел журналы на виртуальной машине и на машине с Windows и не вижу никаких проблем.
- Запустил длительный сеанс проверки связи, чтобы проверить, не перегружена ли сеть. Никаких потерянных пакетов после многих часов работы. Проблемы все еще сохраняются в выходные, когда все ушли.
- Сделал winscp с ВМ на машину с Windows в обход самбы. Все еще имеет ошибку. Указывает, что это не проблема с самбой, а проблема с сетью более низкого уровня на виртуальной машине.
- Запустил общий ресурс на устройстве NAS напрямую. Это работает отлично. Казалось бы, это устраняет некоторые проблемы с внешними сетями, такие как плохие кабели или неправильно настроенные сетевые устройства. Однако это не устраняет внутренний сетевой мост внутри устройства NAS, используемого виртуальной машиной. Посмотрел, есть ли там какие-то проблемы с конфигурацией, но не нашел.
- Убедитесь, что jumbo-кадры не включены. Мой опыт работы с неправильно сконфигурированными jumbo-кадрами связан с отбрасыванием пакетов, а не с повреждением или подобными ошибками.
- Сделал smbstatus на виртуальной машине, чтобы убедиться, что все используют SMB3. Они есть. Шифрование не используется, но используется подпись с помощью AES-128-CMAC. (ПРИМЕЧАНИЕ: на 52 компьютерах с Windows общий ресурс сопоставлен с буквой диска.)
- Убедился, что Samba работает на TCP-порту 445. Так и было.
- В моей лаборатории есть два устройства qNAP, которые не испытывают этих проблем. Единственная разница с ними, которую я вижу, заключается в том, что у них есть виртуальные машины, которые не находятся в домене. Мне трудно поверить, что виртуальная машина, находящаяся в домене, может привести к повреждению данных, но я думаю, что все мы сталкивались с более странными проблемами. Сегодняшний проект состоит в том, чтобы настроить их на моем тестовом домене здесь и посмотреть, что произойдет.
- Специалист по ИТ-поддержке у этого клиента исключительный. Я работал с ним на протяжении многих лет с большим успехом. Других проблем с сетью на их сайте нет.
- Он готов помочь здесь, включая запуск wireshark, чтобы посмотреть, сможем ли мы сказать, что происходит.
- Мы оба в тупике...
Вот несколько вещей, которые я собирался попробовать, но решил попросить совета, так как это занимает немного времени...
- Подключите виртуальную машину к моему тестовому домену в моей лаборатории.
- Запустите wireshark в их сети. Посмотрим, сможем ли мы посмотреть, что происходит на проводе.
- Посмотрим, сможем ли мы найти дополнительный Linux-компьютер для связи с виртуальной машиной в попытке устранить клиентскую часть Windows в конфигурации.
- Создайте дополнительную виртуальную машину на устройстве NAS, но не обновляйте ее до последней версии кода Ubuntu. Посмотрите, может ли это помочь изолировать какую-либо проблему обновления.
Может кто предложит другие вещи поискать или сделать?
Заранее спасибо!
Брюс