public inbox for passt-user@passt.top
 help / color / mirror / Atom feed
From: Stefano Brivio <sbrivio@redhat.com>
To: Amir Gonnen <amir.gonnen@neuroblade.com>
Cc: "passt-user@passt.top" <passt-user@passt.top>
Subject: Re: Handshake timeout?
Date: Mon, 21 Nov 2022 17:20:53 +0100	[thread overview]
Message-ID: <20221121172053.0858ba96@elisabeth> (raw)
In-Reply-To: <PA4PR09MB4880ECCE0B0E8430A802982D820A9@PA4PR09MB4880.eurprd09.prod.outlook.com>

Hi Amir,

On Mon, 21 Nov 2022 16:08:35 +0000
Amir Gonnen <amir.gonnen@neuroblade.com> wrote:

> Hi,
> 
> I'm trying out passt with custom QEMU (we emulate a proprietary device).
> 
> On one terminal I'm running latest passt (3eb26fe):
> ./passt --debug -f -t 55556:22 -s /tmp/passt.socket
> 
> On another terminal I'm running our qemu-system-x86_64 with:
>  -device virtio-net-pci,netdev=net0  -netdev stream,id=net0,server=off,addr.type=unix,addr.path=/tmp/passt.socket
> 
> QEMU starts and the VM boots, but without network:
> [FAILED] Failed to start NetworkMan...[0m - Network Manager Wait Online.

I would have a look into this first -- check NetworkManager logs (and
traffic capture, more below) and try to figure out why the network
isn't being configured -- passt implements a DHCP server, and it seems
to be configured given your output.

> On passt side I see this log:
> 
> No external routable interface for IPv6
> Outbound interface (IPv4): ens160
> MAC:
>     host: 00:50:56:87:50:45
> DHCP:
>     assign: 192.168.120.119
>     mask: 255.255.255.0
>     router: 192.168.120.1
> DNS:
>     192.168.3.240
> 0.8229: UNIX domain socket bound at /tmp/passt.socket
> 
> 0.8245: You can now start qemu (>= 7.2, with commit 13c6be96618c):
> 0.8247:     kvm ... -device virtio-net-pci,netdev=s -netdev stream,id=s,server=off,addr.type=unix,addr.path=/tmp/passt.socket
> 0.8250: or qrap, for earlier qemu versions:
> 0.8252:     ./qrap 5 kvm ... -net socket,fd=5 -net nic,model=virtio
> 143.3596: accepted connection from PID 1704978
> 144.3168: TCP: index 0, SOCK_ACCEPTED: CLOSED -> SYN_RCVD
> 144.3168: TCP: hash table insert: index 0, sock 41, bucket: 59909, next: (nil)
> 144.3169: TCP: index 0: ACK_FROM_TAP_DUE
> 144.3170: TCP: index 0, timer expires in 10.000s
> 154.3170: TCP: index 0, handshake timeout
> 154.3170: TCP: index 0, reset at tcp_timer_handler:2965
> 154.3170: TCP: index 0, CLOSED: SYN_RCVD -> CLOSED
> 154.3171: TCP: hash table remove: index 0, sock 41, bucket: 59909, new: (nil)
> 154.3172: TCP: hash table compaction: maximum index was 0 (0x5600919ac500)
> 159.3257: TCP: index 0, SOCK_ACCEPTED: CLOSED -> SYN_RCVD
> 159.3257: TCP: hash table insert: index 0, sock 41, bucket: 134652, next: (nil)
> 159.3258: TCP: index 0: ACK_FROM_TAP_DUE
> 159.3258: TCP: index 0, timer expires in 10.000s
> 169.3258: TCP: index 0, handshake timeout
> 169.3258: TCP: index 0, reset at tcp_timer_handler:2965
> 169.3259: TCP: index 0, CLOSED: SYN_RCVD -> CLOSED
> 169.3259: TCP: hash table remove: index 0, sock 41, bucket: 134652, new: (nil)
> 169.3259: TCP: hash table compaction: maximum index was 0 (0x5600919ac500)
> 174.3371: TCP: index 0, SOCK_ACCEPTED: CLOSED -> SYN_RCVD
> ...
> 
> Looks like a handshake timeout.

Yes, and I would expect that to happen if the guest has no configured
network: passt will send packets but your SSH daemon won't answer.

Other than checking NetworkManager logs for DHCP issues, you can also
use the --pcap option in passt:

  ./passt --pcap guest.pcap --debug -f -t 55556:22 -s /tmp/passt.socket

guest.pcap will contain a guest-side packet capture in pcap format
(readable with e.g. Wireshark).

> Am I doing something wrong?

I don't know yet. :)

-- 
Stefano


      reply	other threads:[~2022-11-21 16:21 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-21 16:08 Handshake timeout? Amir Gonnen
2022-11-21 16:20 ` Stefano Brivio [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20221121172053.0858ba96@elisabeth \
    --to=sbrivio@redhat.com \
    --cc=amir.gonnen@neuroblade.com \
    --cc=passt-user@passt.top \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for IMAP folder(s).