- Title is now "Hands-on BGP"; the AS-path diagram is gone from the cover. - Sections: IPv6 addresses and prefixes; where AS numbers and prefixes come from (IANA, RIRs, the RIPE database, IRR vs RPKI); BGP and the bytes of an UPDATE; IP transit vs Internet exchanges (the peering LAN as an Ethernet segment, route servers); the lab (ferrix, pr01.rue, SwissIX, NL-ix, France-IX, DE-CIX, transit). - The UPDATE walked through in section 3 is a real 94-byte capture from ferrix for 2a0d:d741:1::/48. Vertical slides light up one part at a time with its decode; the generator asserted every quoted number against the capture. Session counts come from the tracked bird.conf, the route6 object from the RPSL file, SwissIX's LAN from PeeringDB. - New components: focusable bytes, decode table, prefix bits, and SVG diagrams drawn in the theme's colours. - Opening index.html straight from disk used to give a title and empty panels, because browsers block the module and the section files there. The page now explains that, and also reports a failed reveal.js load. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2.6 KiB
Where numbers come from
Notes: Section 2. Nobody "owns" addresses or AS numbers; they are registered to you.
A hierarchy of registries
the root
Europe, Middle East
IANA hands large blocks to five regional registries. They hand smaller ones to members (LIRs), who assign to end users.
Notes: RIR = Regional Internet Registry. LIR = Local Internet Registry, a member of an RIR, typically an ISP. Our space comes from RIPE NCC via an LIR.
AS numbers
- 16 bits at first:
1to65535 - 32 bits since RFC 6793: up to
4294967295 - Old routers see
AS23456(AS_TRANS) in place of a big one - Private use:
64512–65534and4200000000–4294967294
The lab daemon is AS4200000001. It is stripped before the Internet sees your route.
Notes: RFC 6996 reserves the private ranges. The upstream router removes the private AS from the path, so the origin everybody else sees is AS210036.
The RIPE database says who may announce what
route6: 2a0d:d741:1::/48
descr: ETHZ Netsec 2026 BGP lab - student 1
origin: AS210036
mnt-by: mnt-ch-ray-1
source: RIPE
One of these exists for every student prefix. Networks build their filters from them.
Notes:
This is a real object; try the whois on the next slide. mnt-by names the
maintainer: whoever holds its credentials can change the object. An inet6num
object records the address block itself, a route6 object who may originate it.
Two ways to say "this origin is allowed"
IRR (route6) |
RPKI (ROA) | |
|---|---|---|
| What it is | an entry in a database | a signed certificate |
| Who can create it | whoever holds the maintainer | only the holder of the addresses |
| Says | prefix + origin AS | prefix + origin AS + max length |
| Used for | building prefix filters | dropping "invalid" routes |
Notes: Max length matters for us: a ROA for the /40 with max length 40 would make every student /48 RPKI-invalid, and many networks would drop it.
Look it up yourself
whois -h whois.ripe.net 2a0d:d741:1::/48
whois -h whois.ripe.net AS210036
Or in a browser: RIPEstat, bgp.tools, or a looking glass at an exchange.