Prefiks yang hilang di tabel rute subnet VPC dan prefiks yang hilang di router pelanggan adalah dua kesalahan berbeda, dan hanya satu di antaranya diperbaiki di dalam tabel rute AWS. Gateway privat virtual mengiklankan blok CIDR yang terkait dengan VPC-nya; tabel rute subnet menentukan ke mana beban kerja mengirim balasan. Memperlakukan yang kedua sebagai cara mengubah yang pertama adalah kesalahan paling umum dalam diagnosis ini. Jalankan pemeriksaan di bawah secara berurutan dan pisahkan kedua arah.

Beri nama lampiran sebelum Anda membaca tabel apa pun

VPN situs-ke-situs berakhir di gateway privat virtual atau di gateway transit, dan ID sumber daya menentukan model perutean mana yang berlaku. Baca dulu: aws ec2 describe-vpn-connections --vpn-connection-ids vpn-0123456789abcdef0 --query 'VpnConnections[].{Tunnels:VgwTelemetry,Gateway:GatewayId,Transit:TransitGatewayId}'. Jawabannya memberi tahu Anda apakah tabel berikutnya yang harus diperiksa adalah tabel rute VPC atau tabel rute gateway transit.

Jika VPN terlampir ke gateway transit, berhenti memperlakukan tabel rute VPC sebagai bidang kendali. Di sana tabel VPC menunjuk ke lampiran gateway, dan asosiasi serta propagasi terjadi di tabel rute gateway transit. Mencampur kedua pandangan menghasilkan kesimpulan yang yakin tentang objek yang salah.

Arah AWS ke kantor adalah iklan

Untuk lampiran VGW, gateway mengiklankan blok CIDR yang terkait dengan VPC-nya ke gateway pelanggan melalui BGP. Menambahkan rute subnet individual, atau mengarahkan rute ke VPC yang dipasangkan atau ke peralatan, tidak menambahkan CIDR terkait lain dan tidak muncul dalam iklan itu. Jika kantor kehilangan prefiks, bandingkan daftar rute yang diterima dengan asosiasi VPC sebelum mengedit tabel rute apa pun.

Aturan sederhana ini punya pengecualian, jadi batasi cakupannya. Pengaturan VPN CloudHub dapat mengiklankan ulang prefiks situs antar gateway pelanggan, dan gateway transit mengikuti aturan propagasinya sendiri. Pernyataan bahwa VGW hanya mengiklankan VPC-nya sendiri adalah default yang berguna, bukan hukum yang mencakup setiap topologi yang akan Anda temui.

Arah kantor ke AWS adalah propagasi plus pemilihan

Pada arah sebaliknya, VGW mempelajari prefiks kantor, tetapi itu saja tidak memindahkan beban kerja. Tabel rute subnet harus memiliki propagasi yang diaktifkan untuk lampiran atau membawa rute statis ke tujuan yang sama. Ketika keduanya ada untuk satu prefiks, rute statis menang, dan pencocokan prefiks terpanjang berjalan sebelum keduanya.

Baca asalnya alih-alih mengasumsikannya: aws ec2 describe-route-tables --route-table-ids rtb-0123456789abcdef0 --query 'RouteTables[].Routes'. Entri dengan asal EnableVgwRoutePropagation berasal dari BGP; entri dengan asal CreateRoute diketik oleh manusia dan akan terus menang sampai seseorang menghapusnya.

Runbook yang memisahkan kedua arah

Catat empat fakta di sisi AWS sebelum mengubah apa pun: jenis lampiran, CIDR VPC yang terkait, asal rute subnet untuk prefiks yang dimaksud, serta status tunnel dan BGP. Panggilan describe yang sama mengembalikan VgwTelemetry dengan jumlah rute yang diterima per tunnel, yang memberi tahu Anda apakah AWS menerima rute sama sekali. Lalu bandingkan dengan apa yang benar-benar dipasang perangkat pelanggan. Prefiks yang ada di BGP tetapi tidak ada di tabel penerusan adalah masalah impor lokal atau jalur terbaik, bukan masalah tabel rute AWS.

Jika tabel subnet sama sekali tidak memiliki prefiks itu, aktifkan propagasi atau tambahkan rute statis, lalu baca ulang kueri yang sama setelah interval propagasi alih-alih menganggap perubahannya langsung. Jika prefiks ada dan lalu lintas tetap gagal, biarkan bidang kendali dan beralihlah ke jalur data.

Apa yang tidak boleh diubah saat Anda berada di sana

Jangan mengaktifkan atau mematikan propagasi pada tabel rute yang tidak terkait untuk memperbaiki satu prefiks yang hilang, dan jangan menambahkan rute default untuk menutupi satu CIDR yang tidak ada. Kedua perubahan memperluas cakupan dampak dan mempersulit diagnosis berikutnya. Batasi pengeditan pada tabel yang melayani subnet beban kerja yang dimaksud.

Jalur data terpisah dari semua ini. Grup keamanan bersifat stateful, ACL jaringan tidak, dan firewall host atau jalur balik asimetris dapat menjatuhkan lalu lintas yang telah dikirim perutean dengan benar. Agregat yang diiklankan juga tidak mengotorisasi setiap layanan di dalamnya, jadi batasi akses di batas kebijakan alih-alih mengandalkan apakah suatu alamat kebetulan muncul dalam pengumuman BGP.

Simpan keadaan sebelum dan sesudah setiap kueri tabel rute dalam catatan perubahan. Jika perubahan memperburuk keadaan, pulihkan rute sebelumnya dan konfirmasikan dengan kueri yang sama, karena pengembalian yang tidak dapat Anda verifikasi hanyalah dugaan.

Artikel terkait