(DIR) Josip Tišljar Mataušić (9A3SFZ)
Objavljeno: 2025-09-08
Nedavno sam uveo IPv6 u svoju mrežu. Išao sam toliko daleko da sam u
potpunosti onemogućio IPv4 te se sada oslanjam na NAT64 za pristup
servisima koji imaju samo v4 adrese. Tijekom tranzicije morao sam
naći način da računalima dodijelim smislene adrese kako bih im lakše
pristupao.
Loše rješenje
U početku sam se vodio IPv4 načinom adresiranja. Koristio male
brojeve za prepoznavanje VLAN-a i hosta zanemarujući da su adrese
heksadekadske:
10.50.30.11 2001:db8:45d5:30::11
| | | |
| HOST | HOST
VLAN ID VLAN ID
Opcije enkodiranja
Ubrzo sam shvatio da ovime nisam iskoristio puni potencijal 64-bitnih
subneta. I dalje moram pamtiti koji host ima koji broj i slično.
Potaknut adresama poput 2001:db8::cafe:beef:abba odlučio sam
enkodirati ime hosta u adresu. Naravno, mogu tvoriti imena direktno
iz heksadekadskih znamenki (npr. c0de), no to me ograničava samo na
slova a-f.
ASCII
Druga zamisao bila je da enkodiram ASCII znakove u zadnjih 64 bita.
Svaki znak zauzima 8 bitova pa bi najdulja riječ mogla imati 8
znakova. Nije loše, ali moglo bi i bolje pogotovo kad se uzme u obzir
da je su mnogi znakovi komandni (\r \n...) i za ovu svrhu nepotrebni.
Baza 36
Da enkodiram sva slova engleske abecede i brojeve 0-9 potrebno je 36
kombinacija (bez da razlikujemo velika i mala slova). Zato sam
odabrao brojevni sustav s bazom 36 gdje brojeve od 10 na dalje
predstavljaju redom slova engleske abecede. Ovim brojevnim sustavom
moguće je spremiti do 12 znakova u 64 bita.
radio --> 45833712 --> 2bb5df0
BAZA 36 BAZA 10 BAZA 16
Radi jednostavnosti implementacije u kodu dobiveni heksadekadski broj
razlamam od kraja prema početku stavljajući dvotočku svake četiri
znamenke. Zatim rezultat dodajem na kraj adrese.
2bb:5df0 2001:db8::2bb:5df0
<---- |------|
Plan adresiranja
Od kad vršim vlastitu BGP najavu[1] na raspolaganju mi je /40
prefiks. Ovo je moj konačni adresni plan:
(BIN) 1: /bgp-i-vlastiti-prefiks
Fiksno host BASE 36
|----------| |-----------------|
2a0f:6284:4802:0:35df:83fe:7e3b:3ae3
|| |
|| UVIJEK 0 - nemam niti jednu lokaciju s više od 16
VLAN-ova
|VLAN ID u heksadekadskom obliku
Fizička lokacija
Implementacija enkodera
Sve ovo nema nikakvog smisla ako ne postoji način za brzo enkodiranje
imena hosta u adresu. Zato sam napravio HTML dokument i BASH skriptu
koji služe upravo tome.
HTML dokument možete isprobati tako da u padajućem izborniku
odaberete 02 Bra DMZ - 0 je fizička lokacija, a 2 je broj VLAN-a.
Zatim u istaknuto polje upišite radioz, zutiradio, util ili glazba
(ne preusmjerava na https automatski) što će vas odvesti na prikazanu
adresu kada pritisnete enter. (Dokument namjerno izgleda prastaro jer
volim stare GUI-je)
BASH skripta radi na način da je prefiks već u skripti, prvi argument
se samo dodaje prefiksu, a drugi se enkodira i dodaje.
./ipv36.sh 02 radioz --> 2a0f:6284:4802::6259:35e3
|| |----|
|| base36
|VLAN ID
Fizička lokacija
ping $(./ipv36 02 radioz)
Zašto samo ne koristiti DNS
DNS je izvrsno rješenje, kad radi. Često tijekom rada po mreži nije
moguće uspostaviti vezu s DNS serverom. Iz tog razloga kad tad će
biti potrebno znati IP adresu uređaja. Vođenje evidencije je svakako
dobro rješenje i uvijek preporučljivo, ali kad znaš na što se želiš
spojiti puno je lakše upisati ime uređaja u lokalnu HTML datoteku ili
BASH skriptu nego tražiti broj u dokumentaciji. Ovakvo rješenje
također ne zahtjeva sinkronizaciju podataka o imenima i odgovarajućim
adresama između računala.
Dekoder
(QRY) Last 64 bits of IPv6 address:
## Povezano
=> /bgp-i-vlastiti-prefiks/ 2025-09-07 BGP najava vlastitog prefiksa
## Najnovije
[2025-11-01 Srednjevalni predajnik s NE555](/sv-predajnik-ne555/)
(DIR) 2025-09-07 BGP najava vlastitog prefiksa
(DIR) 2025-08-14 Quansheng UV-K5 kao udaljeni primopredajnik na Linuxu
(DIR) 2025-07-15 DSB modulator s MC1496
(DIR) 2025-06-04 SDR i udaljeni primopredajnik u Krapini
--------------------------------------------------------------------------------
(DIR) Lista repetitora
(DIR) Početna
(DIR) Dnevnik veza