Bagaimana cara paket IP tahu gateway mana yang harus diambil?

11

Misalkan dua gateway ada di jaringan yang sama. Jika saya mengerti dengan benar, tabel routing IP pada komputer pengirim memutuskan paket mana yang dialihkan melalui gateway mana.

Tabel perutean IP berisi alamat IP gateway.

Bagaimana alamat IP gateway ini digunakan saat mengirim paket IP?

Simon Farshid
sumber
1
Paket tidak "tahu", router memutuskan gateway mana untuk mengirimnya, melalui tautan apa pun yang ada antara router dan gateway yang dipilih. (Seperti yang ditunjukkan oleh jawabannya, ethernet adalah lapisan 2 yang terkenal dan umum untuk lalu lintas IP.)
Peter Cordes

Jawaban:

13

TL; DR: dalam bingkai Ethernet yang menampung paket TCP / IP itu

Server-> switch-> traffic router, serta server-> switch-> traffic server, adalah tempat pengalamatan IP tidak benar-benar memainkan bagian yang berarti. Ini adalah dunia protokol yang mendasari, kemungkinan besar Ethernet. Jadi itu adalah dunia yang berjalan pada pengalamatan MAC.

Jadi, Anda hanya perlu menyelesaikan kebingungan bahwa gateway default adalah alamat IP. Yaitu, semacam ... saat startup ... tetapi parameter gateway IP hanya diperlukan untuk melakukan satu hal, yaitu bertanya: siapa yang memiliki 192.168.1.1 di sekitar sini? Jawabannya datang bahwa gateway adalah MAC 88: 99: aa: bb: cc: dd: ee: ff. (Itu permintaan / tanggapan ARP, penerjemah antara dua dunia.) Paket menuju ke MAC pada tingkat Ethernet, meskipun faktanya ia mungkin memiliki tujuan berbeda pada tingkat IP.

Jadi paket ditandai untuk pergi ke gateway yang dipilih dengan menyandikannya di bidang "MAC tujuan" dari bingkai ethernet. Bidang menentukan gateway mana pada jaringan yang akan mendapatkannya, jika ada beberapa gateway. ("Frame" adalah kapsul dasar yang menyimpan paket atau bagian dari paket.)

kubanczyk
sumber
2
Saya akan melangkah lebih jauh dan mengatakan itu satu-satunya jawaban di sini yang benar-benar menjawab pertanyaan itu.
Peter Green
3
Juga bukan hanya gateway default yang berlaku untuk ini, itu berlaku untuk alamat "next hop" untuk setiap entri dalam tabel routing.
Peter Green
2
Tentu saja, ada protokol layer-1/2 selain ethernet yang digunakan. Protokol IEEE LAN memiliki alamat MAC, tetapi protokol lain menggunakan sesuatu atau tidak sama sekali.
Ron Maupin
6

Header datagram IP hanya berisi informasi alamat sumber dan tujuan. Berdasarkan tujuan, router harus tahu di mana untuk meneruskan paket selanjutnya, dan informasi ini disimpan dalam tabel routing.

Mungkin ada informasi rute statis untuk alamat atau subnetnya dan gateway default digunakan untuk yang lain. Ini biasanya terjadi pada jaringan lokal: mungkin ada routing statis ke jaringan lokal lain dan gateway default untuk sisanya yaitu Internet. Dalam hal beberapa gateway default yaitu rute ke 0.0.0.0atau ::, yang aktif akan dipilih berdasarkan nilai Preferensi atau Metriknya .

Banyak hal menjadi lebih rumit ketika ada beberapa rute antara tujuan, karena ada antara ISP di tingkat Internet. Ada beberapa metode untuk berbagi informasi antara router: Routing Information Protocol (RIP), Open Shortest Path First (OSPF), dan Border Gateway Protocol (BGP). Terlepas dari bagaimana informasi ini dibagikan, tabel routing tahu lompatan berikutnya dan paket IP hanya mengetahui tujuan akhirnya.

Esa Jokinen
sumber
1
Juga layak disebut routing berbasis kebijakan di mana tabel routing yang berbeda dapat dipilih berdasarkan berbagai kriteria seperti source ip atau tanda firewall.
Bratchley
Jangan lupa untuk menjelaskan bahwa pertandingan awalan terpanjang lebih diutamakan daripada yang lainnya ketika ada dua kemungkinan pertandingan.
Ron Maupin
Pertanyaannya bukan tentang bagaimana router meneruskan paket, tetapi bagaimana pengirim mengirimnya ke router yang benar.
Barmar
@Barmar: Versi asli dari pertanyaan ini bisa ditafsirkan dua cara, dan ini menjawab yang lain. Proses memilih router berdasarkan tabel routing sama pada mesin yang berasal. Oleh karena itu, saya masih menemukan jawaban ini berguna sementara yang lain mendapat satu lapisan ke bawah. Mereka saling melengkapi.
Esa Jokinen
Saya baru saja memeriksa riwayat sunting. Saya tidak melihat perbedaan yang relevan dalam versi aslinya. Pertanyaannya adalah bagaimana paket sampai ke router yang ditentukan dari tabel routing.
Barmar
2

Satu kemungkinan adalah bahwa jaringan dikonfigurasikan dengan protokol redundansi hop pertama (FRHP), seperti VRRP atau HSRP. FHRP memiliki alamat gateway virtual yang digunakan host, dan lalu lintas yang dikirim ke alamat virtual diambil oleh salah satu router fisik, yang kemudian meneruskan lalu lintas. Jika router primer gagal, router sekunder dapat menentukan itu dan mengambil alih penerusan paket.


Bagaimanapun, paket-paket tidak menentukan jalur yang mereka ambil. Setiap paket diteruskan secara individual dan independen dari paket lain, berdasarkan informasi dalam tabel routing router, dan paket ke tujuan yang sama dari sumber yang sama dapat mengambil jalur yang berbeda jika tabel routing berubah.

Router mempelajari rute dengan tiga cara:

  1. Jaringan yang terhubung langsung
  2. Rute yang dikonfigurasi secara statis
  3. Melalui protokol routing dinamis
Ron Maupin
sumber
2

Jawaban singkat dan sederhana: Tidak disandikan dalam paket, atau itu adalah alamat target Ethernet tergantung pada bagaimana Anda melihatnya. Tumpukan IP / Ethernet melihat gateway yang menangani alamat IP tujuan, mengirimkan permintaan ARP untuk alamat IP gateway untuk mendapatkan alamat MAC-nya, lalu mengirimkan paket keluar ke alamat MAC gateway. Gateway kemudian meneruskan paket dan melakukan hal yang sama lagi. Ini mengasumsikan jaringan Ethernet.

Saya pikir saya menjawab apa yang Anda minta. Saya pernah bertanya-tanya hal yang sama. Pertanyaan Anda juga dapat diinterpretasikan sebagai bagaimana suatu host, diberikan tabel routing tertentu, memutuskan untuk gateway apa untuk mengirim paket keluar.

Alex Cannon
sumber
0

Tentu saja, satu detail yang bisa dilihat adalah apakah suatu rute cocok. Jika saya mengirim ke 192.0.2.55/24 dan rute tersedia untuk lalu lintas ke 10.55.0.0/16 maka rute itu diabaikan karena tidak berlaku.

Kriteria berikutnya yang biasanya dilihat adalah memiliki rute yang lebih spesifik memiliki prioritas daripada rute yang lebih umum. Dengan rute "spesifik", maksud saya adalah subnet yang lebih kecil. Dengan kata lain, angka yang lebih besar saat menggunakan notasi / CIDR, dan subnet mask yang lebih besar saat menggunakan notasi "subnet mask". Dengan kata lain, jaringan tujuan dengan kemungkinan alamat lebih sedikit.

Jadi, "gateway default", juga dikenal sebagai "gateway resor terakhir", biasanya menentukan tujuan untuk semua lalu lintas ke jaringan 0.0.0.0/0. Rute apa pun untuk jaringan yang lebih kecil akan "lebih spesifik" dari itu, dan akan diprioritaskan. Jadi, 192.0.2.0/24 akan memiliki prioritas lebih.

Ketiga, rute biasanya memiliki bidang lain yang disebut "metrik", atau kadang-kadang nama yang berbeda seperti "prioritas". Jika Anda memiliki beberapa jaringan dengan ukuran yang sama, ini dapat berdampak.

Nilai-nilai "metrik 'ini mungkin sesuatu yang dihasilkan secara otomatis (misalnya, dengan cara itu jaringan berkecepatan lebih tinggi digunakan untuk lebih banyak lalu lintas), tetapi dapat disesuaikan secara manual.

Di mana informasi tentang gateway yang akan diambil disandikan di dalam paket IP yang dikirim?

Paket IP tidak menyertakan informasi tentang perutean, kecuali untuk menentukan alamat IP tujuan. Detail perutean ditentukan oleh peralatan yang menangani perutean di sepanjang jalan, dan perincian seperti itu biasanya tidak ditempatkan dalam paket IP. (Oleh karena itu, peralatan tidak mencari detail seperti itu, karena tidak ada di sana. Karena peralatan tidak mencari informasi seperti itu, tidak ada gunanya untuk mencoba memasukkan informasi tersebut.)

RFC 791 halaman 11 memperlihatkan tabel gaya "ASCII ART" dari informasi yang ada dalam paket IP. Setelah tabel itu, dokumen itu menunjukkan perincian (misalnya, bagian "Opsi" dijelaskan pada halaman 15).

TOOGAM
sumber