Saya memberikan alamat IPv6 ke mesin SUSE Linux saya di VM VirtualBox dengan ifconfig eth0 inet6 add ..
.
Saya tidak bisa melakukan ping alamat itu dari Windows XP (sebaliknya) Alamat mesin Linux adalah efbb::26
dan XP efbb::27
.
ping6 -s efbb::27 -r efbb::26
the output:
from efbb::27 with 32 bytes of data ( I think it must be 56 bytes)
Invalid source route specified
Problem with source address or scope-id
Dimana masalahnya?
Jawaban:
Anda mencampuradukkan alamat: Anda mencoba mengirim ping dari Windows, tetapi Anda memberi alamat Linux sebagai "sumber" dan Windows sebagai "tujuan". OS tidak dapat mengirim paket dari alamat yang bukan miliknya.
Secara umum, Anda tidak perlu menentukan sama sekali; tabel perutean 1 menangani pemilihan alamat. Jalankan saja salah satu dari:
-s addr
Berapa banyak byte data yang dikirim tidak masalah; bahkan mungkin nol - header ICMP tetap dikirim dan akan dijawab. Beberapa sistem mungkin mengabaikan ping yang lebih besar dari ~ 1000 byte, tetapi 32 vs 56 benar-benar tidak membuat perbedaan.
1 Gunakan
netsh
→interface ipv6
untuk mengakses tabel routing IPv6 antara lain.sumber
Dengan cara yang sangat sederhana, oktaf pertama dari alamat ipv6 mungkin memiliki arti khusus. Bit tertentu menunjukkan bahwa alamat tersebut digunakan untuk multicast. Lainnya mendefinisikan ruang lingkup. Secara sederhana: Anda tidak bisa hanya memilih nilai apa pun untuk itu.
Jadi pertanyaan saya adalah, dari mana alamat itu, yang Anda gunakan. Saya menemukan mereka sangat "tidak biasa". Jika Anda sedang membangun jaringan provate, pertimbangkan untuk menggunakan Alamat dari apa yang disebut "Alamat lokal unik" (fc00 :: / 7). fc00 :: / 8 di-reseved untuk alamat lokal unik yang ditugaskan secara global. Jadi, Anda harus memilih alamat dari dalam fd00 :: / 8.
Lihat RFC 4193 untuk informasi lebih lanjut tentang masalah ini.
sumber