Your IP address is


IPv4 Soft Landing BIS

  • Ref. Name: AFPUB-2016-V4-001-DRAFT07
  • Submitted: 01 December 2017
  • Versions: 7.0
  • Status: Under Discussion
  • Obsoletes: CPM 5.4
  • Author:
    - Omo Oaiya, omo[at], WACREN
    - Joe Kimaili, jkimaili[at], Ubuntunet Alliance
    - Alain P. Aina, aalain[at], TRS

1.0 Summary of the Problem Being Addressed by this Policy Proposal

The soft-landing policy ratified by the board on the 11/11/2011 describes how AFRINIC should manage allocations/assignments from the last /8. It defines 2 phases of IPv4 exhaustion. During phase 1, it sets the maximum to be /13 instead of /10 and in phase 2, the maximum to /22 and the minimum to /24. It makes no difference between existing LIRs or End-Users and new ones. The policy also does not impose IPv6 deployment.


IPv4 exhaustion in other regions combined with other factors has imposed huge pressure on the AFRINIC IPv4 pool with requests for large IPv4 blocks, with very little IPv6 deployment. The pressure on the AFRINIC IPv4 pool has led to some policy proposals to reserve some blocks for certain sub-communities.


2.0 Summary of How this Proposal Addresses the Problem

This policy proposal solves the problem described above by:

  1. Changing the value of the maximum allocations/assignment sizes during exhaustion phases 1 and 2.
  2. Reserving a dedicated block to facilitate IPv6 deployment.


3.0 The Proposal

3.1 Policy Manual section to be affected:

Section 5.4 of the CPM will be replaced as follows:


5.4 Soft Landing

This proposal describes how AFRINIC shall assign, allocate and manage IPv4 resources during the "Exhaustion Phase" which begins when AFRINIC first needs to assign or allocate IP addresses from the final /8 block (102/8) of IPv4 address space. The purpose of this policy is to ensure that address space is assigned and/or allocated in a manner that is acceptable to the AFRINIC community especially during this time of IPv4 exhaustion

In order to ensure a smooth transition to IPv6, AFRINIC's pool should be managed to provide members with address space after the IPv4 pool is depleted. This will help in maintaining IPv4 networks while deploying IPv6 networks - a practice that characterizes the transition period.

Enforcement of the “soft landing” policy begins when AFRINIC starts to allocate space from the final IANA allocated /8 (102/8).


5.4.1 The Final /8

The Final /8 block of IPv4 address space, or "Final /8", is the /8 block of IPv4 address space that has been allocated by the IANA to AFRINIC in terms of section 2.2c of the Global Policy for the Allocation of the Remaining IPv4 Address Space -

In this Soft-Landing policy section, “last /8” and “102/8” shall be used interchangeably.


5.4.2 Pre-Exhaustion Phase

The "Pre-Exhaustion phase" was the period during which AFRINIC allocated or assigned IPv4 addresses to LIRs and End Users using the section 5.0 of the policy manual and before the Exhaustion phase was triggered.

This phase ended when AFRINIC publicly announced ( that the Exhaustion Phase has begun.


5.4.3 Exhaustion Phases

During the Exhaustion Phase, the following allocation and assignment policy will be used. This applies to both LIRs and End Users, and applies to all IPv4 address space allocated, assigned, or otherwise managed by AFRINIC during the transition to and after the beginning of the Exhaustion Phase, regardless of whether or not such IPv4 address space is a part of the Final /8.

During either of the phases below, all allocations and assignments of IPv4 space will be based on justified and demonstrated need according to policies in effect in the pre-exhaustion phase, in addition to restrictions that apply during the exhaustion phases.

The exhaustion phase will be divided into two parts: Exhaustion Phase 1 During this phase, allocation/assignment of IPv4 address space will continue as in Pre-Exhaustion with the minimum set at /24, but the maximum will change from /10 to /18, subject to the provisions in 5.4.6 Allocations and assignments will be made from the final /8 or from any other IPv4 address space available to AFRINIC, until no more than a /11 of non-reserved space is available in the Final /8. At this point the exhaustion phase 2 will begin. For the avoidance of doubt all applications in the process at this point will be evaluated as per the new policy. Exhaustion Phase 2

Exhaustion Phase 2 will start when no more than a /11 of non-reserved space is available from the final /8. During this phase, the maximum allocation/assignment size will be /22, and the minimum shall remain at /24, subject to the provisions in 5.4.6


5.4.4 Eight (8) months planning window (Allocation and assignment period).

The allocation and assignment period shall be for 8 months. This will help to ensure that LIRs request only for resources they need in the short to medium term, and promote fairness in the equitable distribution of the last IPv4 address pool. This allocation/assignment period will remain the same throughout the life span of this policy.


5.4.5 Allocation Criteria In order to receive IPv4 allocations or assignments during the Exhaustion Phase, the LIR or End User must meet IPv4 allocations or assignment policy requirements (by demonstrating and justifying the need for requested space) and must demonstrate to have efficiently used at least 90% of all previous allocations or assignments (including those made during both the Pre-Exhaustion and the Exhaustion Phase). In the case of new LIRs or End Users (those that have no previous allocations or assignments prior to the Exhaustion phase), this requirement does not apply to their first allocation or assignment request. AFRINIC resources are for the AFRINIC service region and any use outside the region should be solely in support of connectivity back to the AFRINIC region


5.4.6 Allowable Limits Within any 24-month period during Exhaustion Phase 1, an organization may receive one or more allocations/assignments totalling the equivalent of a /18. Within any 24-month period during Exhaustion Phase 2, an organization may receive one or more allocations/assignments totalling the equivalent of a /22. 


5.4.7 IPv6 deployment reserve A contiguous /12 IPv4 address block will be reserved out of the Final /8 to facilitate IPv6 deployment. When AFRINIC, can no longer meet any more requests for address space (from the Final /8 or from any other available address space), allocations and assignments from this block must be justified by needs for IPv4 addresses space to support IPv6 deployment. Examples of such needs include: [IPv4 addresses for Core DNS service providers’ dual stack DNS servers and any other translation mechanisms as defined by the IETF. This block will be subject to a one-time allocation/assignment size of /24 per organization. For the avoidance of doubt, this replaces the /12 reservation for “some future uses, yet unforeseen” that was present in a previous version of the IPv4 soft landing policy. AFRINIC staff will use their discretion when evaluating justifications for allocations/assignments from this /12 block. In order to receive an allocation or assignment from the IPv6 deployment reserve: The applicant may not have received any resources under this (soft landing) policy in the preceding six (6) months; The applicant must demonstrate that no IPv4 space from previously received allocations or assignments, if any, will meet this need. Exceptionally for this IPv6 reserve, Core DNS Service providers as defined in will also include ICANN sanctioned African ccTLDs (including IDN ccTLDs) operating in the AFRINIC service region.


4. Acknowledgements

We thank authors of the Soft Landing–SD policy proposal and the community for their contributions.


5. Revision History

09 FEB 2016

AFPUB-2016-V4-001-DRAFT01 (Version 1.0)

Version 1 posted to the rpd mailing list

16 FEB 2016

AFPUB-2016-V4-001-DRAFT02 (Version 2.0):
A complete new version of the section 3 and so the policy proposal now obsoletes the existing IPv4 Soft landing policy instead of amending it.

22 JUL 2016

AFPUB-2016-V4-001-DRAFT03 (Version 3.0):

Maximum Allocation/Assignment size changed from /15 to /18 in phase 1 as per discussions at AFRINC-24 public policy meeting and follow on discussions on RPD.

14 APR 2017

AFPUB-2016-V4-001-DRAFT04 (Version 4.0):

  1. Updated version based on consensus from online and AFRINIC-25 discussions.
  2. Formatted for direct insertion to CPM
  3. “current Phase” replaced by “Pre-exhaustion Phase”
  4. No more direct reserve for critical Internet Infrastructures
  5. No more direct reserve for New entrants
  6. A dedicated reserve to facilitate IPv6 deployment

27 JUN 2017

AFPUB-2016-V4-001-DRAFT05 (Version 5.0):

  1. Introduced “Allowable Limits & Recurrence” – clauses and (a 24-month waiting period for a member that has received the maximum allocation limit per phase to return for more space).
  2. Restored minimum assignment/allocation size in exhaustion to /24
  3. Removed definition of “Core DNS Services provider” and other definitions that were not necessary.
  4. Addressed most issues in the staff assessment report of AFPUB-2016-V4-001-DRAFT04


22 SEP 2017

AFPUB-2016-V4-001-DRAFT06 (Version 6.0):

  1. Clarified 5.4.3 on the issue of demonstrated need applying to all phases, and in-line with other sections of the CPM
  2. Reworded 5.4.6 for better clarity.
  3. Reworded 5.4.7 to clarify some provisions of the /12 reserve (That the previous reserved /12 is replaced by the one in this proposal).

01 Dec 2017

AFPUB-2016-V4-001-DRAFT07 (Version 7.0):

(Last Call)

  1. Reword to remove specific reference to “XLAT translators”
  2. Add “including IDN ccTLDs” to


6. References

Global Policy for the Allocation of the remaining IPv4 address pool:



Discussions are taking place on the policy working group mailing list if you want to subscribe to the mailing send your subscription request to rpd-request [at] with 'Subscribe' as subject line

Mailing list archives can be found at

Profile Information

Application afterLoad: 0.002 seconds, 0.71 MB
Application afterInitialise: 0.061 seconds, 2.70 MB
Application afterRoute: 0.105 seconds, 5.95 MB
Application afterDispatch: 0.148 seconds, 7.65 MB
Application afterRender: 2.106 seconds, 11.08 MB

Memory Usage


14 queries logged

  1. SELECT m.*, c.`option` AS component
      FROM www3menu AS m
      LEFT JOIN www3components AS c
      ON m.componentid =
      WHERE m.published = 1
      ORDER BY m.sublevel, m.parent, m.ordering
  2. SELECT jf_content.reference_field, jf_content.VALUE, jf_content.reference_id, jf_content.original_value

      FROM www3jf_content AS jf_content

      WHERE jf_content.language_id=1
      AND jf_content.published=1
      AND jf_content.reference_id IN(1,11,20,304,324,262,231,275,340,393,791,661,12,51,348,805,831,13,52,154,795,14,24,53,793,15,797,16,62,803,17,799,68,97,27,387,619,191,221,172,170,76,171,337,418,521,845,175,174,177,237,176,499,511,455,481,523,547,671,184,185,188,423,837,527,179,181,204,235,156,158,159,384,475,675,629,160,161,162,157,192,621,268,270,266,321,264,265,338,416,483,519,843,276,283,278,282,477,677,279,631,280,281,429,277,382,305,306,307,308,424,835,317,330,318,319,320,325,326,327,328,529,341,342,343,345,350,349,408,351,354,745,489,509,356,479,525,549,673,388,400,403,404,405,406,419,513,399,394,396,397,395,617,615,663,665,801,414,163,731,733,735,737,715,739,741,789,743,269,271,272,292,289,290,291,293,294,339,295,420,386,807,811,285,286,288,819,383,287,515,567,809,817,415,284,633,763,315,312,561,563,565,767,314,380,517,332,333,334,335,336,370,346,347,311,378,787,352,364,362,365,833,719,366,367,368,411,412,453,825,379,357,358,359,360,361,371,431,459,463,467,469,471,473,531,533,537,539,541,543,545,599,609,601,605,485,487,491,493,495,497,551,553,557,559,841,573,575,577,579,581,583,585,591,589,777,779,813,749,751,753,755,747,757,759,761,783,373,374,375,376,721,417,829,669,353,413,461,535,781,727,667,611,597,603,815,769,635,637,639,641,645,643,647,649,651,653,655,657,659,785,821,823,827,697,701,703,705,707,709,711)
      AND jf_content.reference_table='menu'
  3. SELECT *
      FROM www3rokcandy
      WHERE published=1
  4. SELECT template
      FROM www3templates_menu
      WHERE client_id = 0
      AND (menuid = 0 OR menuid = 311)
      ORDER BY menuid DESC
      LIMIT 0, 1
  5. SELECT a.*, AS author, u.usertype, cc.title AS category, s.title AS SECTION, CASE WHEN CHAR_LENGTH(a.alias) THEN CONCAT_WS(":",, a.alias) ELSE END AS slug, CASE WHEN CHAR_LENGTH(cc.alias) THEN CONCAT_WS(":",, cc.alias) ELSE END AS catslug, AS groups, s.published AS sec_pub, cc.published AS cat_pub, s.access AS sec_access, cc.access AS cat_access  
      FROM www3content AS a
      LEFT JOIN www3categories AS cc
      ON = a.catid
      LEFT JOIN www3sections AS s
      ON = cc.SECTION
      AND s.scope = "content"
      LEFT JOIN www3users AS u
      ON = a.created_by
      LEFT JOIN www3groups AS g
      ON a.access =
      WHERE = 2247
      AND (  ( a.created_by = 0 )    OR  ( a.state = 1
      AND ( a.publish_up = '0000-00-00 00:00:00' OR a.publish_up <= '2024-02-20 22:59:11' )
      AND ( a.publish_down = '0000-00-00 00:00:00' OR a.publish_down >= '2024-02-20 22:59:11' )   )    OR  ( a.state = -1 )  )
  6. SELECT jf_content.reference_field, jf_content.VALUE, jf_content.reference_id, jf_content.original_value

      FROM www3jf_content AS jf_content

      WHERE jf_content.language_id=1
      AND jf_content.published=1
      AND jf_content.reference_id IN(2247)
      AND jf_content.reference_table='content'
  7. UPDATE www3content
      SET hits = ( hits + 1 )
      WHERE id='2247'
  8. SELECT *
      FROM www3jcomments_settings

      WHERE lang = 'en-GB'
  9. SELECT id, title, module, POSITION, content, showtitle, control, params
      FROM www3modules AS m
      LEFT JOIN www3modules_menu AS mm
      ON mm.moduleid =
      WHERE m.published = 1
      AND m.access <= 0
      AND m.client_id = 0
      AND ( mm.menuid = 311 OR mm.menuid = 0 )
      ORDER BY POSITION, ordering
  10. SELECT jf_content.reference_field, jf_content.VALUE, jf_content.reference_id, jf_content.original_value

      FROM www3jf_content AS jf_content

      WHERE jf_content.language_id=1
      AND jf_content.published=1
      AND jf_content.reference_id IN(79,330,35,326,331,306,347,345,329,292,335,303,188)
      AND jf_content.reference_table='modules'
  11. SELECT AS id, s.title AS title
      FROM www3sections AS s
      WHERE s.published=1  
      AND IN (12,18)
  12. SELECT DISTINCT AS id, c.title AS title, c.SECTION AS SECTION,
                            CASE WHEN CHAR_LENGTH(c.alias) THEN CONCAT_WS(":",, c.alias) ELSE END AS catslug
      FROM www3categories AS c, www3content AS a
      WHERE a.catid =
      AND a.state = 1
      AND c.published=1
      AND c.SECTION IN (12,18)
      ORDER BY c.ordering ASC
  13. SELECT AS id, a.title AS title, a.catid AS catid, a.sectionid AS sectionid,
                                                        CASE WHEN CHAR_LENGTH(a.alias) THEN CONCAT_WS(":",, a.alias) ELSE END AS slug,
                                                        CASE WHEN CHAR_LENGTH(b.alias) THEN CONCAT_WS(":",, b.alias) ELSE END AS catslug
      FROM www3content AS a, www3categories AS b
      WHERE a.catid =
      AND a.state = 1
      AND a.access <= 0
      ORDER BY a.ordering ASC
  14. SELECT jf_content.reference_field, jf_content.VALUE, jf_content.reference_id, jf_content.original_value

      FROM www3jf_content AS jf_content

      WHERE jf_content.language_id=1
      AND jf_content.published=1
      AND jf_content.reference_id IN(712,688,134,187,193,170,708,214,223,2279,266,267,292,306,676,668,314,715,775,793,1315,1115,816,830,834,835,2005,853,870,871,875,885,1399,938,953,961,963,1163,1099,2059,1191,1197,1237,1421,1249,1305,1511,1669,1733,2273,1885,1903,1939,2001,2077,2091,2143,2133,2167,2173,2207,2269,2263,2351,2371,2401,2413,2439,2447,2519,2463,2479,2495,2491,2521,2547,2549,2551,278,2399,116,186,192,169,195,707,784,216,2277,1941,265,284,291,710,677,675,667,313,689,748,761,783,790,802,829,833,836,852,863,869,877,916,939,951,960,962,977,1097,1199,1235,1275,1303,1423,1833,1883,1891,2165,1999,2019,2271,2087,2127,2153,2199,2267,2259,2261,2281,2411,2435,2449,2461,2467,2477,2543,2545,117,674,698,145,153,157,168,191,184,196,706,257,654,241,1943,283,290,312,662,862,690,694,747,1337,765,801,815,828,832,851,868,881,2317,1889,921,942,1095,1153,1263,1299,1403,1509,1673,1881,1969,2201,2089,2093,2145,2129,2195,2245,2265,2289,2347,2427,2459,2539,2541,197,198,256,146,148,151,152,156,190,705,1349,232,260,261,276,282,289,311,661,691,901,746,769,800,808,814,827,831,867,923,1297,1151,1321,1671,1715,1745,1879,1905,1963,2015,2063,2065,2083,2203,2243,2255,2345,2457,2537,2535,2051,785,199,158,189,219,228,281,288,310,1149,660,692,745,752,799,807,813,826,864,876,925,1091,1295,1207,1215,1219,1395,1431,1575,1607,1803,1831,1847,1877,1961,2125,2161,2253,2333,2425,2475,2533,2045,255,154,188,200,212,673,1147,659,704,693,2043,744,788,780,806,812,825,866,874,926,1175,1089,1397,1409,1539,1569,1605,1829,1875,2079,2107,2123,2159,2205,2239,2387,2415,2531,166,150,202,213,296,672,331,658,697,743,781,805,811,873,927,1087,1109,1127,1145,1285,1391,1429,1439,1603,1627,1873,1971,1997,2025,2029,2073,2105,2121,2223,2529,167,201,2359,295,671,657,696,742,774,804,810,872,928,1363,1085,1125,1273,1413,1483,1535,1601,1611,1851,1871,1995,2221,2321,2527,700,1123,203,1863,670,656,725,803,809,849,929,1075,989,1083,1387,1393,1599,1827,1849,1869,2027,1959,2331,1993,2185,2525,165,204,221,251,669,727,2011,850,1731,934,965,1081,1335,1379,1385,1597,1623,1739,2523,1991,2183,2197,2313,141,205,230,271,724,1079,796,838,845,1333,1383,1499,1595,1689,1729,1931,1989,2075,2137,2241,2517,136,206,262,270,2231,285,714,733,750,844,1177,1593,1819,1687,1929,1987,2135,2247,2515,135,207,269,279,695,720,787,840,2513,1591,1817,1685,1927,1985,2023,2067,2235,133,229,268,208,275,795,776,1233,1589,1683,1983,2021,2233,2511,132,185,263,274,2007,1173,1587,1625,1665,1666,1865,1923,2509,131,147,210,264,273,717,1531,1585,1643,1947,1965,1921,2507,130,217,226,243,329,653,1517,1583,1629,1813,1937,1919,2505,149,218,1507,1573,1581,1861,1917,2061,2503,127,194,220,1293,277,1503,1815,1859,1915,2501,121,124,225,955,1257,1457,1781,1857,2499,125,180,914,987,1489,1779,1855,2055,2497,115,126,227,798,1453,1741,1777,1853,2493,113,1809,123,293,719,1785,2489,111,122,286,294,1157,1737,1773,2487,110,664,1243,1727,1771,2485,678,1255,1725,2483,666,1259,1609,1723,1767,2481,679,1241,1721,1765,2473,680,1719,1231,1763,2471,681,1133,1701,1761,2469,114,701,683,1699,1759,2465,684,933,1661,1757,2455,685,2453,908,1659,1755,687,842,1657,2445,878,1655,1751,2443,857,1749,1653,2441,856,1651,1717,2437,841,1051,2433,753,2431,794,918,2429,244,911,2423,242,910,2421,247,837,909,2417,250,773,789,2409,258,772,2407,699,771,722,702,770,2403,259,713,721,2397,233,2395,234,2393,112,239,2391,238,2389,236,2383,237,2381,235,2379,240,2377,142,2375,246,2373,245,2369,144,2367,140,2365,252,2363,253,2361,254,2357,143,2355,248,2353,249,2343,2341,2339,2337,2335,2329,2327,2325,2323,2319,2315,2311,2309,2307,2305,2303,2301,2299,2297,2295,2293,2291,2287,2285,2283,2275,2257,2251,2249,2237,2229,2227,2225,2219,2217,2215,2211,2209,2193,2191,2187,2181,2179,2177,2175,2169,2163,2157,2155,2151,2149,2147,2141,2139,2131,2119,2117,2111,2101,2099,2097,2095,2085,2081,2057,2053,2049,2047,2041,2039,2037,2035,2033,2031,2013,2009,2003,1981,1979,1977,1975,1973,1967,1957,1955,1953,1951,1949,1945,1935,1933,1911,1909,1907,1899,1897,1895,1893,1887,1867,1845,1843,1841,1839,1837,1835,1825,1823,1821,1811,1807,1805,1801,1799,1797,1795,1793,1791,1789,1787,1783,1747,1743,1735,1713,1711,1709,1707,1705,1703,1695,1693,1691,1681,1679,1677,1675,1663,1649,1647,1645,1639,1633,1631,1615,1613,1579,1577,1571,1567,1565,1533,1563,1529,1525,1523,1519,1513,1497,1495,1493,1491,1487,1475,1473,1471,1469,1467,1463,1461,1455,1451,1449,1445,1443,1441,1437,1433,1427,1425,1419,1417,1415,1411,1407,1405,1401,1389,1381,1361,1359,1357,1355,1353,1351,1347,1345,1343,1341,1331,1329,1327,1325,1323,1319,1317,1313,1309,1307,1301,1311,1291,1289,1287,1277,1269,1267,1265,1251,1247,1245,1239,1229,1225,1223,1221,1217,1213,1211,1209,1203,1201,1193,1189,1187,1185,1181,1179,1171,1169,1165,1159,1155,1183,1137,1143,1139,1135,1141,1129,1131,1119,1117,1113,1107,1105,1103,1101,1049,1047,1045,1037,1029,1027,1025,1023,1021,1017,1015,1013,1005,1001,999,997,995,993,991,983,981,979,970,968,966,958,956,952,950,949,948,947,946,945,944,941,940,932,931,930,922,917,913,912,779,907,906,905,903,902,900,894,887,884,883,880,865,859,839,792,791,786,764,751,723,726,728,729,730,738,732,737,739,740,307,741,736,735,734,173,172,175,174,858,920)
      AND jf_content.reference_table='content'

Language Files Loaded

Untranslated Strings Diagnostic


Untranslated Strings Designer