Understanding IPv6

Q. I'm using IPv6 and after my IP address there's a number after a percentage (%) sign. What is it?

A. Given the nature of IPv6, each interface (physical and logical) has a link-local address and all will have the same prefix (e.g., fe80::0), which means you have multiple interfaces connected to the fe80::0 address which would make it hard to control which interface is actually used to transmit IPv6 traffic. The %# is used to identify the sending interface and is added to the end of the target IP address to identify which interface to send the data out over. It's used for internal purposes only and is never actually sent out over the wire. It has no effect on the actual packet. Basically, the application says "Send this packet to IP address fe80::etc:etc using my %# interface," so if I had an address to send to of fe80::42 and I wanted to send it out over interface 4, I would send to fe80::42%4. It's important that it's your local interface number and not that of the remote machine. If you IPCONFIG a remote machine, the identifier value it shows is not the one you need to use to send to it. It's for your internal purpose only, identifying the sending interface to use to get to the IP address you specify.

Hide comments


  • Allowed HTML tags: <em> <strong> <blockquote> <br> <p>

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.