I had a lot of trouble trying to get piped serial connector working with ESXi but was finally able to get everything working with the steps below. I should note that the install manual was actually pretty good and helped me figure out the below.
For me I’m running ESXi 7.x with vCenter 7.x
I had issues with getting the piped method to work, and had a lot of issues.
I think a version of these instructions below also exist in the PDF manual but here are my notes as well in case I’m mistaken.
On the server that will be hosting the VM, you need to SSH into it’s shell and run the command:
esxcli network firewall ruleset rule list -r remoteSerialPort
In my case, the inbound/outbound ranges were:
Ruleset Direction Protocol Port Type Port Begin Port End ---------------- --------- -------- --------- ---------- -------- remoteSerialPort Outbound TCP Dst 0 65535 remoteSerialPort Inbound TCP Dst 23 23 remoteSerialPort Inbound TCP Dst 1024 65535
So I picked a port like 2020 that falls both in the outbound range, and the inbound range.
But I had to check it was enabled with:
esxcli network firewall ruleset list -r remoteSerialPort
And it said:
Name Enabled ---------------- ------- remoteSerialPort false
Because it wasn’t enabled, I had to run:
esxcli network firewall ruleset set -r remoteSerialPort -e true
That took care of the firewall issue for me on the blade hosting the x86 VM.
On the VM, create a new serial but instead of selecting “Use named pipe” select “Use Network“
The direction is set to “Server“
The IP you want to use is the IP of the ESXi host which is hosting the VM, and you can use whatever port falls in the range from the previous step, so in my case the host is 192.168.1.27 and the port used is [b]2020[/b]
So the URI value is: tcp://192.168.1.27:2020
Make sure the check boxes for Connect At Power On is checked, and Yield CPU on poll is checked, but you can uncheck “Use Virtual Serial Port Concentrator“
After that’s all set, you gotta move onto setting up your SSH terminal, in my case I used PuTTY
The putty details are from a PDF manual regarding how to set it up, but it’s a lot less forgiving then usual
From Putty, go to Settings, then
“Terminal”
Then “Local echo”
“Force Off”
AND:
In Terminal settings, check the following boxes:
- TURN OFF Implicit CR in every LF
- TURN OFF Implicit LF in every CR
- TURN OFF Local Echo
- TURN OFF Local line editing
- In Window settings:
set your Columns and Rows to match the Boot Manager display (typically 120 Columns, 40 Rows) - If you are using a RAW session (recommended):
• Host Name: 192.168.1.27
- Port: 2020
- Connection Type: Raw
- Terminal → Implicit CR in every LF: UNCHECK
- Terminal → Implicit LF in every CR: UNCHECK
- Terminal → Local echo: Force off
- Terminal → Local line editing: Force off
- Telnet → Telnet Negotiation Mode: Passive
- Telnet → Return key sends Telnet New Line instead of ^M: UNCHECK
- In Window settings: