Не проходит http-запрос на Google внутри nodejs в BAS. В чем причина?

Поддержка
  • Тестирую отправление http-запросов через nodejs в BAS .
    Как будто бы кубик nodejs не может выйти в интернет, что оч странно! (см лог)
    Вывод в консоль завершается , И соответственно работа nodejs-кубика останавливается на этой последней строке лога (полый лог смотрите ниже):

    [Событие] "socket": Сокет назначен запросу.
    

    Полный лог работы nodejs кубика:

    [145441036] [12:46:17] Поток №1 : [Шаг 1] Скрипт запущен. Подключаем модуль https.
    [145441036] [12:46:17] Поток №1 : [Шаг 2] Создан объект с опциями для запроса.
    [145441036] [12:46:17] Поток №1 : [Шаг 3] Объект запроса успешно создан.
    [145441036] [12:46:17] Поток №1 : [Шаг 4] Добавляем обработчики событий к запросу...
    [145441036] [12:46:17] Поток №1 : [Шаг 5] Обработчики событий добавлены.
    [145441036] [12:46:17] Поток №1 : ...
    
    ...
    [145441036] [12:46:17] Поток №1 : [Шаг 6] Команда req.end() вызвана. Скрипт теперь ожидает ответа от сети...
    [145441036] [12:46:17] Поток №1 : [Событие] "socket": Сокет назначен запросу.
    

    nodejs код:

    // === ФУНДАМЕНТАЛЬНЫЙ ТЕСТ СЕТИ 2.0 (Node JS / BAS) ===
    const https = require('https');
    
    async function main() {
    
      console.log('[Шаг 1] Скрипт запущен. Подключаем модуль https.');
    
      const options = {
        hostname: 'www.google.com',
        port:     443,
        path:     '/',
        method:   'GET',
        headers:  { 'User-Agent': 'BAS‑Connectivity‑Test/1.0' },
        timeout:  20_000          // 20 секунд
      };
    
      console.log('[Шаг 2] Создан объект с опциями для запроса.');
    
      // ------- КРИТИЧЕСКО: BAS должен подождать этот Promise -------
      await new Promise((resolve, reject) => {
    
        let req;
        try {
          req = https.request(options, (res) => {
            console.log('[SUCCESS] Получен ответ от сервера!');
            console.log('Статус ответа: ' + res.statusCode);
    
            res.on('data', (chunk) =>
              console.log(`[data] Получено ${chunk.length} байт.`)
            );
    
            res.on('end', () => {
              console.log('[end] Ответ полностью получен. Тест УСПЕШЕН.');
              resolve();
            });
          });
    
          console.log('[Шаг 3] Объект запроса успешно создан.');
    
        } catch (e) {
          console.error('[FATAL] Не удалось создать запрос: ' + e.message);
          reject(e);
          return;
        }
    
        // ----- Диагностические события запроса -----
        req.on('socket', (socket) => {
          console.log('[socket] Сокет назначен.');
    
          socket.on('lookup', (err, address, family, host) => {
            if (err) {
              console.error(`[lookup] DNS‑ошибка для ${host}: ${err.message}`);
            } else {
              console.log(`[lookup] ${host} → ${address} (IPv${family})`);
            }
          });
    
          socket.on('connect',       () => console.log('[connect] TCP‑соединение установлено.'));
          socket.on('secureConnect', () => console.log('[secureConnect] TLS‑рукопожатие завершено.'));
          socket.on('error', (e) => console.error('[socket‑error] ' + e.message));
        });
    
        req.on('response',   () => console.log('[response] Сервер начал отправку данных.'));
        req.on('timeout', () => {
          console.error('[timeout] 20 секунд истекли — уничтожаем запрос.');
          req.destroy(new Error('TIMEOUT'));
        });
        req.on('error', (e) => {
          console.error('[error] ' + e.message);
          reject(e);
        });
        req.on('close',  () => console.log('[close] Соединение закрыто.'));