Anda di halaman 1dari 31

[Module 4]

Neighbor Discovery &


Address Autoconfiguration

1
Read Me
● Ini adalah modul gratis, kamu boleh membagikan, menggunakan, atau mengambil sebagian materi
dari modul ini, tanpa menghapus credit footer dari webiptek.com..
● Jika kamu menemukan kesalahan pada teori yang disampaikan, mohon sampaikan koreksi tersebut
ke pembuat (kontak tercantum di bawah).
● Isi bisa saja berubah tanpa pemberitahuan, baik dari segi struktur maupun materi.
● Buka link berikut untuk melihat modul terupdate: https://files.webiptek.com/IPv6

Penjelasan dalam format video (Bahasa Indonesia), tonton di link berikut:

Syarat mempelajari Module 4 - Neighbor Discovery & Address Autoconfiguration, kamu harus sudah
memahami:
1. Konsep IPv6 (Address Representation, IPv6 Address Type, IPv6 Header)
2. Network Fundamental

Last Update: 10/04/2021

2
Contributor
Nama Kontak
Rizqi Aldi Prayugo xdnroot@gmail.com xdnroot

Ingin berkontribusi?
Kamu bisa menambahkan materi dan/atau merevisi materi yang sudah ada.
Hubungi saya (Rizqi) melalui sosial media atau email di atas.
Cukup sampaikan materi yang ingin kamu tambahkan atau revisi dalam bentuk dokumen atau presentasi.

3
ICMPv6 [ RFC 4443 ]
● Neighbor Discovery & Address Autoconfiguration menggunakan protokol ICMPv6
● Paket ICMPv6 ditandai dengan Next Header 58.
● Fungsi Neighbor Discovery:
○ Untuk mengetahui perangkat yang terhubung ke link yang sama.
○ Untuk mengetahui MAC address (link layer address) perangkat lain (seperti ARP).
○ Untuk menemukan router.
● ICMPv6 Message untuk Neighbor Discovery (RFC 2461):
○ Router Solicitation (RS)
○ Router Advertisement (RA)
○ Neighbor Solicitation (NS)
○ Neighbor Advertisement (NA)
○ Redirect

4
ICMPv6: Router Solicitation (RS)
● Router Solicitation (RS) adalah paket yang dikirim oleh Host secara multicast.
source address L3 = Host’s IPv6 LLA, L2 = Host’s MAC address,
destination address L3 = ff02::2, L2 = 33:33:00:00:00:02.

● Router Solicitation digunakan oleh Host untuk meminta router mengirimkan Router Advertisement
yang berisi informasi seperti Prefix, Gateway, dan DNS server.

5
ICMPv6: Router Solicitation (RS)

6
ICMPv6: Router Advertisement (RA)
● Router Advertisement (RA) dikirimkan oleh router setiap periode tertentu secara multicast.
source address L3 = Router’s IPv6 LLA, L2 = Router’s MAC address,
destination address L3 = ff02::1, L2 = 33:33:00:00:00:01.
● Router Advertisement (RA) juga dikirim oleh router dalam rangka membalas Router Solicitation (RS)
dari Host.
● Defaultnya, RA minimal berisi informasi prefix dan gateway. Informasi lain yang bisa diberikan oleh
router melalui RA: DNS Server dan DHCPv6 Server.

7
ICMPv6: Router Advertisement (RA)

8
ICMPv6: Neighbor Solicitation (NS)
● Neighbor Solicitation (NS) sama seperti ARP pada IPv4, yaitu dikirim secara multicast oleh Host
untuk mencari mac address Host lain.
source address L3 = Sender IPv6 LLA, L2 = Sender MAC address,
destination address L3 = Destination IPv6, L2 = 33:33:ff:xx:xx:xx.

● Neighbor Solicitation (NS) juga dikirim secara unicast oleh suatu Host untuk mengecek apakah
neighbor (host lain) masih terhubung.
source address L3 = Sender IPv6 LLA, L2 = Sender MAC address,
destination address L3 = Destination IPv6, L2 = Destination Mac address

9
ICMPv6: Neighbor Solicitation (NS)

10
ICMPv6: Neighbor Advertisement (NA)
● Neighbor Advertisement (NA) dikirimkan oleh Host secara unicast dalam rangka merespon Neighbor
Solicitation (NS).
source address L3 = Sender IPv6, L2 = Sender MAC address,
destination address L3 = Destination IPv6, L2 = Destination MAC address.

● Unsolicited Neighbor Advertisement (NA) dikirim oleh Host secara multicast untuk menyebarkan
perubahan informasi (IPv6) secara cepat.
source address L3 = Sender IPv6, L2 = Sender MAC address,
destination address L3 =ff02::1, L2 = 33:33:00:00:00:01.

11
ICMPv6: Neighbor Advertisement (NA)

12
ICMPv6: Redirect
● Redirect digunakan oleh router untuk menginformasikan gateway lain yang lebih baik untuk
mengirim paket ke prefix tertentu.
● Setelah Host1 mendapatkan pesan Redirect ke R2, maka Host1 akan mengirim ulang paket untuk
2001:db8:4fee:0:0cd8:1c3a:400b ke R2.

13
ICMPv6: Redirect

14
Check Neighbors
lab@linux:~$ ip -6 neighbor show
2001:470:ec29:2100::f dev ens4 lladdr 0c:6a:93:40:b1:00 router STALE
fe80::e6a:93ff:feab:b801 dev ens4 router FAILED
fe80::e6a:93ff:fe40:b100 dev ens4 lladdr 0c:6a:93:40:b1:00 router REACHABLE
2001:470:ec29:2100:e6a:93ff:fe8e:5000 dev ens4 lladdr 0c:6a:93:8e:50:00 STALE

Cisco# show ipv6 neighbors


IPv6 Address Age Link-layer Addr State Interface
2001:470:EC29:2100:6D93:5CEF:1B04:870A 0 000c.2914.752d REACH Gi0/0
2001:470:EC29:2100:A1EF:DD3:F4AF:A144 4 0c6a.938e.5000 STALE Gi0/0
FE80::250:56FF:FEC0:B 198 0050.56c0.000b STALE Gi0/0
FE80::E6A:93FF:FE8E:5000 4 0c6a.938e.5000 STALE Gi0/0
FE80::C430:84C0:ED58:8F25 0 000c.2914.752d DELAY Gi0/0

15
IPv6 Address AutoConfiguration
❖ Stateless Address Autoconfiguration (SLAAC)
❖ Stateful (menggunakan DHCPv6)
Apa perbedaan Stateless dan Stateful?

Stateless (SLAAC)
● Tidak memerlukan konfigurasi di sisi host.
● Memerlukan sedikit konfigurasi (bahkan tidak perlu konfigurasi) pada router.
● Tidak ada manajemen IPv6.
● SLAAC bisa mengirimkan konfigurasi IPv6 address, gateway, dan dns server.
● Digunakan untuk pengalamatan yang cepat tanpa perlu manajemen.

Stateful (DHCPv6)
● Perlu mengaktifkan DHCPv6 client di sisi host.
● Memerlukan konfigurasi di router.
● Bisa memanajemen alokasi IPv6.
● DHCPv6 memungkin konfigurasi IPv6 address, dns server, ntp server, domain name, dll.
● Digunakan jika memerlukan kontrol yang lebih ketat dalam pengalamatan IPv6.

16
Creation of Link-Local Address (LLA)
● Ketika suatu link IPv6 aktif (up), host akan membuat LLA, prefix fe80::/10. Contoh:
fe80::e6a:93ff:fe4d:5f00.
● Untuk menghindari terdapat hosts yang memiliki IPv6 address yang sama. Sebelum IPv6 ditetapkan
di interface, host akan melakukan Duplicate Address Detection (DAD) dengan cara mengirim
Neighbor Solicitation secara multicast.
● Jika tidak ada respon (Neighbor Advertisement) yang berasal dari fe80::e6a:93ff:fe4d:5f00. Artinya
IPv6 tersebut belum ada yang menggunakan. Setelah itu, baru IPv6 tersebut digunakan di interface
host tersebut.

17
Configure IPv6 LLA Manually
## Cisco
Router(config)# interface g0/0/0
Router(config-if)# ipv6 address fe80::1111 link-local

## Juniper
[edit]
root@Router# set interfaces ge-0/0/0 family inet6 address fe80::1111/64

## Mikrotik
## not supported yet (RouterOS v6.48)

18
Duplicate Address Detection (DAD)
● Jika terdapat host lain yang sudah
menggunakan IPv6 yang sama, maka host
lain tersebut mengirimkan Neighbor
Advertisement.
● Maka, host akan men-generate IPv6 LLA
address baru, dan mengulangi proses DAD,
hingga mendapatkan IPv6 yang belum
digunakan.

● Jika IPv6 dikonfigurasi secara


manual, maka IPv6 tersebut
akan menjadi invalid, tidak bisa
digunakan (oleh host yang baru)

19
Address Resolution
Sama seperti ARP pada IPv4, di IPv6 terdapat yang namanya Address Resolution. Selain untuk
mengetahui mac address dari suatu IPv6, Address Resolution juga digunakan untuk mengecek
reachability neighbor.

Setiap beberapa detik host mengirimkan NS message untuk mengecek reachability. Jika neighbor
merespon dengan RA, maka neighbor dianggap reachable.

20
Neighbor’s Reachability States
● incomplete: proses pengecekan reachability sedang berlangsung (host mengirim NS ke neighbor).

● reachable: neighbor reachable dan masih dalam masa reachable time (terkonfirmasi beberapa detik
yang lalu) atau neighbor mengirim balasan NA dengan flag 1.

● stale: neighbor telah melebihi batas ReachableTime sejak terakhir terkonfirmasi reachable atau
neighbor mengirim balasan NA dengan flag 0.

● delay: neighbor telah melebihi batas ReachableTime sejak terakhir terkonfirmasi reachable, NS telah
dikirim ulang dan masih dalam masa DELAY_FIRST_PROBE_TIME.

● probe: NS yang ditransmisikan ulang tidak mendapat respon hingga DELAY_FIRST_PROBE_TIME


expired. NS terus ditransmisikan setiap RetransTimer tertentu.

21
Neighbor’s Reachability States

Sumber: https://academy.apnic.net/en/course/ipv6-fundamentals

22
Creation of Global Unicast Address (GUA): SLAAC
Step 1.
Ketika link IPv6 aktif, end devices akan
mengirimkan Router Solicitation (RS).

23
Creation of Global Unicast Address (GUA): SLAAC
Step 2.
Router akan merespon dengan mengirimkan
Router Advertisement (RA) yang berisi prefix.

Flags:
M=0, O=0 Hanya SLAAC.

M=0, O=1 Stateless DHCPv6:


SLAAC untuk pengalamatan, informasi lain
didapatkan dari DHCPv6 server.

M=1 Nilai O diabaikan. Stateful DHCPv6:


Menggunakan DHCPv6 untuk pengalamatan
dan informasi lain (DNS, NTP, dll).

24
Creation of Global Unicast Address (GUA): SLAAC
Step 3.
Host akan men-generate IPv6 GUA, kemudian melakukan Duplicated Address Detection (mengirimkan NS
message), hingga IPv6 GUA yang ia generate unik (belum dipakai host lain).

25
Creation of Global Unicast Address (GUA): DHCPv6
❏ DHCPv6 didefinisikan di RFC 8415

❏ Stateless DHCPv6
Konfigurasi IP Address dilakukan menggunakan SLAAC
DHCPv6 hanya memberikan informasi tambahan, seperti DNS server, NTP server, domain, dll.

❏ Stateful DHCPv6
DHCPv6 Server bertanggungjawab terhadap pengalamatan IPv6, gateway, DNS server, dll.

26
DHCPv6 Operations
1. PC mengirim pesan RS ke semua router yang mendukung IPv6.
2. Router merespon dengan mengirim RA agar PC memulai komunikasi dengan server DHCPv6.
3. PC menjadi DHCPv6 client, kemudian mengirim DHCPv6 SOLICIT ke alamat IPv6 multicast
all-DHCPv6-server (ff02::1:2).
4. Server mengirim DHCPv6 ADVERTISE pesan unicast, menginformasikan bahwa server tersedia untuk
layanan DHCPv6.
5. Client merespon Advertise dari DHCPv6 server, dengan ketentuan:
➔ Stateless DHCPv6 client: PC mengirimkan DHCPv6 INFORMATION-REQUEST untuk meminta
informasi tambahan saja (misal: DNS server, NTP server, dll)
➔ Stateful DHCPv6 client: PC mengirimkan DHCPv6 REQUEST untuk meminta semua informasi
(IPv6 address, Gateway, DNS server, NTP server, dll).
6. Server mengirim DHCPv6 REPLY secara unicast, berisi balasan sesuai permintaan client

27
Disable Autoconfiguration: Linux
Menonaktifkan konfigurasi otomatis pada interface tertentu.
$ sudo sysctl -w net.ipv6.conf.eth1.autoconf=0
$ sudo sysctl -w net.ipv6.conf.eth.accept_ra=0

Menonaktifkan konfigurasi otomatis pada semua interfaces.


$ sudo sysctl -w net.ipv6.conf.all.autoconf=0
$ sudo sysctl -w net.ipv6.conf.all.accept_ra=0

28
Disable Autoconfiguration: Windows

29
Path MTU Discovery
● Path MTU (PMTU) adalah nilai link MTU minimal yang menghubungkan pengirim dan penerima.
● Di IPv6, data yang berukuran besar dipecah menjadi fragment-fragment yang lebih kecil dengan
ukuran sama atau kurang dari nilai MTU.
● Jika MTU lebih besar dari ukuran paket, maka paket akan di buan kemudian router mengirim error
ICMPv6 packet size to big ke pengirim paket. Kemudian pengirim mengatur ulang ukuran paket lalu
ditransmisikan ulang.

30
References
1. https://academy.apnic.net/en/course/ipv6-fundamentals
2. https://tools.ietf.org/html/rfc2461
3. https://tools.ietf.org/html/rfc8415

31

Anda mungkin juga menyukai