Several ASCII ccTLDs are in use that are not ISO 3166-1 two-letter codes. Some of these codes were specified in older versions of the ISO list.
uk (United Kingdom): The ISO 3166-1 code for the United Kingdom is GB. However, the JANET network had already selected uk as a top-level identifier for its pre-existing Name Registration Scheme, and this was incorporated into the DNS root. gb was assigned with the intention of a transition, but this never occurred and the use of uk is now entrenched.
su This obsolete ISO 3166 code for the Soviet Union was assigned when the Soviet Union was still extant; moreover, new su registrations are accepted.
ac (Ascension Island): This code is a vestige of IANA’s decision in 1996 to allow the use of codes reserved in the ISO 3166-1 alpha-2 reserve list for use by the Universal Postal Union. The decision was later reversed, with Ascension Island now the sole outlier. (Three other ccTLDs, gg (Guernsey), im (Isle of Man) and je (Jersey) also fell under this category from 1996 until they received corresponding ISO 3166 codes in March 2006.)
eu (European Union): On September 25, 2000, ICANN decided to allow the use of any two-letter code in the ISO 3166-1 reserve list that is reserved for all purposes. Only EU currently meets this criterion. Following a decision by the EU’s Council of Telecommunications Ministers in March 2002, progress was slow, but a registry (named EURid) was chosen by the European Commission, and criteria for allocation set: ICANN approved eu as a ccTLD, and it opened for registration on 7 December 2005 for the holders of prior rights. Since 7 April 2006, registration is open to all.