Mobile IPv6 enables IPv6 nodes to move between IP subnets while away from their home network. It uses binding updates sent to a home agent to register the mobile node's current location. The home agent tunnels packets to the mobile node's present location. Major differences from MIPv4 include no foreign agent, support on every mobile node, and use of IPv6 features like autoconfiguration and routing headers for route optimization. Quality of service is supported through flow labels and traffic class fields.