| Summary: | ssh -J <public IPv6> <LL IPv6%scopeID> doesn't work as expected | ||
|---|---|---|---|
| Product: | Portable OpenSSH | Reporter: | Owen DeLong <owen> |
| Component: | sshd | Assignee: | Assigned to nobody <unassigned-bugs> |
| Status: | NEW --- | ||
| Severity: | normal | CC: | djm |
| Priority: | P3 | ||
| Version: | 8.2p1 | ||
| Hardware: | ix86 | ||
| OS: | Linux | ||
|
Description
Owen DeLong
2020-05-07 15:47:37 AEST
For purposes of complete information, yes, the following sequence does work as expected: ssh '[2001:db8:f3f4::2ae0]' # ssh to jump host ssh 'fe80::2001:db8:3%enp0s31f6' # executed on jump host However, it is worth noting that the parser does not handle the following correctly: ssh '[fe80::2001:db8:3%enp0s31f6]' and reports: ssh: Could not resolve hostname [fe80::2001:db8:3%enp0s31f6]: Name or service not known It appears that there's a bug in the IPv6 address parser being used which does not handle addresses contained in brackets that also have zone ids specified (e.g. %enp0s31f6). However, for jump, the following doesn't work either: kiev:owen (170) ~ % ssh -J '[2001:db8:f3f4::2ae0]' 'fe80::2001:db8:3%enp0s31f6' 2020/05/06 22:53:36 channel 0: open failed: connect failed: open failed stdio forwarding failed ssh_exchange_identification: Connection closed by remote host I have anonymized all fo the addresses in this report by using example prefix in place of actual addresses. Any inconsistencies in the addresses are typographical errors during manual editing for anonymization. The anonymized addresses are properly: Jump Host (Fedora 31): 2001:db8:f3f4::2ae0 Link Local of iMac: fe80::2001:db8:3 GUA of iMac (not mentioned, likely not relevant) 2001:db8:f3f4::3 you shouldn't enclose the addresses in square braces, OpenSSH only accepts bare addresses. |