URL luôn có định dạng này:
<protocol>://<host>[:<port>]/[<path>][#<hash>]
Vấn đề là IPv6 sử dụng dấu hai chấm, giống như dấu phân cách của cổng và máy chủ, ví dụ:
2001:db8:1f70::999:de8:7648:6e8
Nhưng nếu đây là máy chủ lưu trữ và tôi muốn kết nối với HTTP bằng cổng 100 thì sao?
http://2001:db8:1f70::999:de8:7648:6e8:100/
Vấn đề là đại tràng cuối cùng. Vì số 0 được bỏ qua với dấu hai chấm (trong khoảng từ 1f70 đến 999), nên không biết ': 100' thuộc về IP hay số cổng. Làm thế nào chúng ta có thể biết điều này?