Skip to content

IPv6 only works as long as you ping #9354

@withinboredom

Description

@withinboredom

Version

Windows version: 10.0.22621.963

WSL Version

  • WSL 2
  • WSL 1

Kernel Version

Linux version 5.15.79.1-microsoft-standard-WSL2 (oe-user@oe-host) (x86_64-msft-linux-gcc (GCC) 9.3.0, GNU ld (GNU Binutils) 2.34.0.20200220) #1 SMP Wed Nov 23 01:01:46 UTC 2022

Distro Version

Ubuntu 22.04

Other Software

ping from iputils 20211215

Repro Steps

  1. Configure WSL in bridge mode
  2. Verify you have a global ipv6 address (ip addr)
  3. Start pinging an ipv6 address (ping ipv6.google.com -i 1 -W 2 -O)
  4. After about 5-10 minutes, packets will start coming in
  5. As long as you're pinging, you'll have full internet access over ipv6
  6. Verify access by curl ipv6.google.com or start firefox in WSL and go to ipv6-test.com

This time can be shortened greatly, by forwarding ping packets to the correct interface: https://github.com/withinboredom/ipv6-wsl

Expected Behavior

IPv6 packets should go to the correct interface by default.

Actual Behavior

IPv6 packets are sent to the wrong interface (often called the "wsl" interface in WireShark) instead of the VM interface. After pinging for a while, Windows learns the correct route and packets work correctly until it "forgets" the route once pinging stops.

Diagnostic Logs

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions