Virtualbox настройка com порта: Virtualbox — Русский WINE

windows — Настройка Com портов на виртуальной машине


Вопрос задан


Изменён
2 месяца назад


Просмотрен
627 раз

На сервере развёрнута виртуальная машина ESXI, в ней поставлен образ Windows xp. Включена функция подключение к удалённому рабочему столу, и к Win xp подключаюсь удалённо. Нужно удалённую машину вставить COM кабель, и передать сигнал по RDP на тот же номер COM порта на виртуальной машине. Рис.1. В RDP включил функцию передачи последовательных портов, но на виртуальной машине они не появились в диспетчере устройств. В настройках виртуальной машины можно добавить последовательные порты, но не совсем понятно какие именно нужно выбирать: Use output file, Use physical serial port, Use named pipe, Use network, если какой либо из них, то не понимаю как его настроить.

  • windows
  • vmware
  • rdp






3

В настройках виртуальной машины можно добавить последовательные порты, но не совсем понятно какие именно нужно выбирать: Use output file, Use physical serial port, Use named pipe, Use network, если какой либо из них, то не понимаю как его настроить.

Виртуалка тут участия принимать не должна никакого, эти настройки трогать не нужно.

Нужно чтобы клиент, после того как подключится, набрал

net use com1 \\tsclient\com1

в командной строке сервера, и тогда у него на сервере появится его локальный порт com1






8







Зарегистрируйтесь или войдите

Регистрация через Google

Регистрация через Facebook

Регистрация через почту

Отправить без регистрации

Почта

Необходима, но никому не показывается

Отправить без регистрации


Почта

Необходима, но никому не показывается




Нажимая на кнопку «Отправить ответ», вы соглашаетесь с нашими пользовательским соглашением, политикой конфиденциальности и политикой о куки


linux — Эмуляция COM порта


Вопрос задан


Изменён
4 года 2 месяца назад


Просмотрен
947 раз

Есть ubuntu 16. 04 которая установлена на VirtualBox. В самой машине есть один физический com порт, он прокинут в VirtualBox в режиме «хост устройство» вот так:

Еще я включил 2 порта в режиме «отключен»:

В результате на ubuntu эти порты определяются. (Но работать я так понимаю могу только с одним)

 $ dmesg | grep tty
[    0.004000] console [tty0] enabled
[    0.772403] 00:02: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
[    0.794717] 00:03: ttyS1 at I/O 0x2f8 (irq = 3, base_baud = 115200) is a 16550A
[    0.816355] 00:04: ttyS2 at I/O 0x3e8 (irq = 4, base_baud = 115200) is a 16550A

Вопрос такой: могу ли я сделать так чтобы я мог писать в com-порт и читать из него(как здесь), не подключая никакое устройство (мне просто нужно эхо) и не прибегая ни к каким костылям вроде вставки скрепки в порт что бы замкнуть TX-RX.

Может ли мне в этом помочь socat. Насколько я понял, с помощью него можно сделать мост с одного порта на другой, но я запутался в дебрях его настройки, был бы благодарен если кто подскажет правильную строчку.

Или socat для этой цели не подходит, и мне нужно что-то другое?

  • linux
  • ubuntu
  • com-port






1

Последовательный порт с точки зрения *nix-систем — это обычное терминальное устройство. Так что самое простое — создать псевдотерминал и подключиться к нему:

socat PIPE PTY,link=/tmp/my_pty,raw,echo=0
  • PIPE — создаёт неименованную трубу между входом и выходом, по сути работает как простой эхо-ответчик
  • PTY — создаёт псевдотерминальное устройство, к которому можно подключиться
  • link=/tmp/my_pty — создаёт ссылку на устройство, к которой можно подключаться, как к устройству, именно его можно указывать в open() при открытии порта.
  • raw,echo=0 — задаёт режим работы псевдотерминала, дабы исключить изменение данных ответа.

Из отличий от настоящего порта, самое явное — отсутствие задержки при отправке/получении данных, независимо от установленного baudrate‘а данные будут передаваться почти мгновенно и целым пакетом.


Из альтернатив:

  • tty0tty — эмулирует полноценную пару соединённых друг с другом портов, в качестве эхо можно использовать тот же socat на одном из них.
  • Перенаправить COM-порт в коробке на unix или tcp сокет. После чего можно использовать на этом сокете любой эхо-клиент/сервер на хосте или даже удалённой системе. В качестве клиента/сервера может выступать тот же socat.







Зарегистрируйтесь или войдите

Регистрация через Google

Регистрация через Facebook

Регистрация через почту

Отправить без регистрации

Почта

Необходима, но никому не показывается

Отправить без регистрации


Почта

Необходима, но никому не показывается




Нажимая на кнопку «Отправить ответ», вы соглашаетесь с нашими пользовательским соглашением, политикой конфиденциальности и политикой о куки


3.

10. Последовательные порты

Oracle VM VirtualBox поддерживает использование виртуальных последовательных портов в
виртуальная машина.

Со времен первого IBM PC персональные компьютеры были
оснащен одним или двумя последовательными портами, также называемыми COM-портами.
ДОС и Виндовс. Последовательные порты обычно использовались с модемами, и
некоторые компьютерные мыши раньше подключались к последовательным портам до USB
стало обыденным.

Хотя последовательные порты уже не так распространены, как раньше,
для них еще осталось несколько важных применений. Например,
последовательные порты могут использоваться для создания примитивной сети через
нуль-модемный кабель, если Ethernet недоступен. А еще сериал
порты незаменимы для системных программистов, которым необходимо делать
отладка ядра, поскольку программное обеспечение для отладки ядра обычно
взаимодействует с разработчиками через последовательный порт. С виртуальным серийным номером
порты, системные программисты могут выполнять отладку ядра на виртуальном
компьютер вместо того, чтобы подключаться к реальному компьютеру.

Если виртуальный последовательный порт включен, гостевая ОС видит стандартный
16550A совместимое устройство UART. Другие типы UART могут быть настроены
с помощью команды VBoxManagemodifyvm . Оба
прием и передача данных поддерживается. Как этот виртуальный
последовательный порт затем подключается к хосту, настраивается, и
детали зависят от вашей операционной системы.

Вы можете использовать вкладки «Настройки» или
Команда VBoxManage для настройки виртуального последовательного порта
порты. Для последнего см. Раздел 7.8, «VBoxManagemodifyvm».
для получения информации о --уарт ,
--uartmode и --uarttype
параметры.

Вы можете настроить до четырех виртуальных последовательных портов на каждый виртуальный
машина. Для каждого устройства необходимо установить следующее:

  1. Номер порта: Определяет
    последовательный порт, который должна видеть виртуальная машина. Для лучшего
    результаты, используйте традиционные значения следующим образом:

    • COM1: база ввода/вывода 0x3F8, IRQ 4

    • COM2: база ввода/вывода 0x2F8, IRQ 3

    • COM3: база ввода/вывода 0x3E8, IRQ 4

    • COM4: база ввода/вывода 0x2E8, IRQ 3

    Вы также можете настроить пользовательский последовательный порт. Введите
    Базовый адрес ввода-вывода и прерывание (IRQ).

  2. Режим порта: Какой виртуальный
    порт подключен к. Для каждого виртуального последовательного порта у вас есть
    следующие варианты:

    • Отключено: Гость
      увидит устройство, но будет вести себя так, как будто кабель не подключен.
      был подключен к нему.

    • Хост-устройство: Подключает
      виртуальный последовательный порт к физическому последовательному порту на вашем
      хозяин. На хосте Windows это будет имя вроде
      COM1 . На хостах Linux или Oracle Solaris
      это будет узел устройства, например
      /dev/ttyS0 . Затем Oracle VM VirtualBox будет
      просто перенаправить все данные, полученные от и отправленные на
      виртуальный последовательный порт к физическому устройству.

    • Хост-канал: Настройка
      Oracle VM VirtualBox для подключения виртуального последовательного порта к
      программный канал на хосте. Это зависит от вашей хост-ОС,
      следующее:

      • На хосте Windows данные будут отправлены и получены
        через именованный канал. Имя канала должно быть в
        формат
        \\.\труба\ имя
        где имя должно идентифицировать
        виртуальной машине, но может быть выбран свободно.

      • На хосте Mac, Linux или Oracle Solaris локальный
        вместо этого используется сокет домена. Имя файла сокета
        должен быть выбран таким образом, чтобы пользователь, выполняющий
        Oracle VM VirtualBox имеет достаточные привилегии для создания и
        напишите ему. /tmp каталог
        часто является хорошим кандидатом.

        В Linux есть различные инструменты, которые могут подключаться к
        сокет локального домена или создайте его в режиме сервера.
        Самый гибкий инструмент socat и
        доступен в составе многих дистрибутивов.

      В этом случае вы можете настроить, будет ли Oracle VM VirtualBox
      должен создать именованный канал или сокет локального домена
      хосты, отличные от Windows, сами по себе или должна ли Oracle VM VirtualBox
      предположим, что труба или сокет уже существуют. С
      Параметры командной строки VBoxManage , это
      называется режимом сервера или режимом клиента,
      соответственно.

      Для прямого соединения между двумя виртуальными машинами
      соответствующий нуль-модемному кабелю, просто настройте один
      VM для создания канала или сокета и другого для подключения к нему.

    • Необработанный файл: Отправить
      вывод виртуального последовательного порта в файл. Этот вариант очень
      полезно для захвата диагностических выходных данных от гостя. Любой
      файл может быть использован для этой цели, если пользователь
      под управлением Oracle VM VirtualBox имеет достаточные привилегии для создания
      и записываем в файл.

    • TCP-сокет: Полезно для
      пересылка последовательного трафика через TCP/IP, выступая в роли сервера,
      или он может действовать как TCP-клиент, подключающийся к другим серверам.
      Эта опция позволяет удаленной машине напрямую подключаться
      к последовательному порту гостя, используя TCP.

      • TCP-сервер: Отменить выбор
        Подключиться к существующему
        Установите флажок Pipe/Socket
        и укажите порт
        номер в
        Поле пути/адреса .
        Обычно это 23 или 2023. Обратите внимание, что в UNIX-подобных
        систем вам придется использовать порт номер больше
        чем 1024 для обычных пользователей.

        Клиент может использовать программное обеспечение, такое как
        PUTTY или
        инструмент командной строки telnet для доступа
        TCP-сервер.

      • TCP-клиент: Для создания
        виртуальный нуль-модемный кабель через Интернет или локальную сеть,
        другая сторона может подключиться с использованием TCP, указав
        имя хоста : порт
        в пути/адресе
        поле. Сокет TCP будет работать в режиме клиента, если вы
        выберите Подключиться к существующему
        Флажок Pipe/Socket
        .

На виртуальную машину можно настроить до четырех последовательных портов, но
вы можете выбрать любые номера портов из вышеперечисленных. Тем не менее, сериал
порты не могут надежно разделять прерывания. Если оба порта должны быть
используемые одновременно, они должны использовать разные уровни прерывания,
например COM1 и COM2, но не COM1 и COM3.

COM-порт VirtualBox — руководство 2023

Electronic Team, Inc. использует файлы cookie, чтобы персонализировать ваш опыт на нашем веб-сайте. Продолжая использовать этот сайт, вы соглашаетесь с нашей политикой в ​​отношении файлов cookie. Кликните сюда, чтобы узнать больше.

Ищете варианты интеграции?

Независимо от того, хотите ли вы распространить наш механизм перенаправления последовательных портов как часть своего продукта или рассматриваете возможность развертывания программного обеспечения Serial over Ethernet на уровне предприятия, мы предлагаем гибкие и доступные корпоративные решения, разработанные для удовлетворения ваших потребностей.

Запрос

Узнать больше об интеграции

Поддержка соединений через USB и последовательный порт

Работа с протоколами TCP, UDP, RDP и Citrix.

Интеграция как использование DLL и ActiveX или уровня ядра

Запрос

Узнать больше об интеграции

Ниже мы рассмотрим некоторые параметры конфигурации последовательного порта VirtualBox:

Raw File: параметр для отправки вывода виртуального последовательного порта в файл. Вы можете указать любой файл. Все, что вам нужно, это убедиться, что у вас есть права на запись и создание.

TCP Socket: полезно, когда вам нужно перенаправить последовательные данные по сети TCP/IP. С помощью этой опции вы можете установить прямое соединение между удаленным компьютером и COM-портом виртуальной машины через TCP. Доступные роли: TCP-клиент и TCP-сервер:

.