Konfigurasikan tabel rute dan aturan routing untuk ENI guna mengontrol cara instans ECS mengirim dan menerima lalu lintas melalui beberapa antarmuka jaringan.
Konfigurasikan rute berbasis kebijakan untuk ENI
Perutean berbasis kebijakan meneruskan lalu lintas melalui antarmuka jaringan tertentu berdasarkan aturan yang telah ditentukan, alih-alih hanya mengandalkan rute default. Hal ini memungkinkan kontrol lalu lintas detail halus di berbagai ENI.
Kasus penggunaan
-
Komunikasi di lingkungan multi-ENI: Ketika ENI sekunder digunakan dengan EIP atau gerbang NAT, lalu lintas balasan mungkin keluar melalui ENI primer karena rute default-nya memiliki prioritas lebih tinggi. Rute berbasis kebijakan menegakkan prinsip source in-source out sehingga lalu lintas masuk dan keluar melalui ENI yang sama.
-
Pembebanan lalu lintas: Distribusikan lalu lintas arah keluar ke beberapa ENI dengan mendefinisikan aturan routing, ketika rute default tidak memenuhi kebutuhan Anda.
-
Kontrol akses: Batasi lalu lintas ke antarmuka atau jalur tertentu berdasarkan alamat sumber, alamat tujuan, atau parameter lainnya untuk isolasi jaringan.
Prasyarat
-
ENI telah di-bind ke instans ECS.
Lihat bagian Bind an ENI to an ECS instance pada topik "Create and manage ENIs".
-
ENI telah berlaku di sistem operasi instans ECS.
Lihat bagian Configure ENIs to take effect in an ECS instance pada topik "Create and manage ENIs".
Prosedur
Contoh berikut menggunakan ENI sekunder bernama eth1. Ganti identifikasi ENI dan alamat IP dengan nilai aktual Anda.
Instans Linux
-
Buat tabel rute untuk ENI dan tambahkan aturan rute:
ip -4 route add default via <Gateway of eth1> dev eth1 table 1001 ip -4 rule add from <IP address of eth1> lookup 1001Sebagai contoh, buat tabel rute bernama 1001 untuk eth1 dan tambahkan aturan agar paket dari 172.16.20.193 dirutekan melalui eth1:
ip -4 route add default via 172.16.20.253 dev eth1 table 1001 ip -4 rule add from 172.16.20.193 lookup 1001 -
Pertahankan konfigurasi rute setelah restart.
Tambahkan perintah rute ke konfigurasi startup instans agar tetap tersimpan. Jika tidak, rute akan hilang setelah restart. Lewati langkah ini jika Anda hanya melakukan pengujian.
-
Buka
/etc/rc.local:vim /etc/rc.local -
Tekan
iuntuk masuk ke mode Insert, tambahkan perintah dari langkah sebelumnya, lalu tekanEsc. Masukkan:wqdan tekan Enter untuk menyimpan serta menutup file.CatatanGanti identifikasi antarmuka jaringan dan alamat gateway dengan nilai aktual Anda.
-
Berikan izin eksekusi pada
/etc/rc.local:sudo chmod +x /etc/rc.local
-
-
Verifikasi bahwa tabel rute dan aturan telah dibuat:
ip route list table 1001 && \ ip rule listOutput berikut mengonfirmasi bahwa tabel rute dan aturan telah dikonfigurasi:

Instans Windows
-
Buat rute berbasis kebijakan untuk ENI:
route add -p <Destination network> mask <Subnet mask> <Gateway> if <Interface index> metric <Route priority>Dalam contoh ini, digunakan ENI bernama Ethernet 2. Perintah berikut merutekan semua paket dari 172.16.12.76 melalui gateway di
172.16.12.253:route add -p 0.0.0.0 mask 0.0.0.0 172.16.12.253 if 6 metric 1Parameter:
-
-p: menjadikan rute permanen. Tanpa
-p, rute bersifat sementara dan hilang setelah restart. -
Destination network:
0.0.0.0menunjukkan rute default, digunakan ketika tidak ada rute spesifik yang sesuai. -
Subnet mask dan gateway: Jalankan
ipconfiguntuk melihat nilai-nilai ini, seperti yang ditunjukkan di bawah.
-
Interface index: Jalankan
netsh interface ipv4 show interfacesuntuk melihat indeks, seperti yang ditunjukkan di bawah.
-
Route priority: ditentukan dalam format metric <n>. Nilai yang lebih kecil menunjukkan prioritas lebih tinggi.
-
-
Jalankan
route printuntuk memverifikasi bahwa rute muncul dalam daftar rute.
Contoh
Contoh ini menunjukkan cara mengonfigurasi rute berbasis kebijakan agar instans ECS yang menjalankan Alibaba Cloud Linux 3.2 menerima paket melalui ENI sekunder (eth1) dan mengirim paket balasan melalui eth1 alih-alih ENI primer (eth0). Jika kebijakan keamanan Anda mencakup daftar putih IP sumber untuk ENI tertentu, jalur lalu lintas yang tidak sesuai akan menyebabkan permintaan sah ditolak. Rute berbasis kebijakan mengatasi masalah ini.
-
Siapkan lingkungan.
-
Buat instans ECS.
-
Bind ENI sekunder ke instans ECS.
Lihat Mengikat ENI sekunder.
-
Ajukan Elastic IP Address (EIP) dan asosiasikan dengan ENI sekunder eth1 dalam Mode NAT.
Lihat Kaitkan EIP dengan ENI sekunder.

-
Siapkan client uji.
Gunakan instans ECS lain yang memiliki akses Internet atau komputer lokal sebagai client uji.
-
Tambahkan aturan inbound ke security group instans ECS untuk mengizinkan akses dari alamat IP publik client uji. Lalu jalankan ping <EIP> pada client uji untuk memverifikasi konektivitas ke EIP yang diasosiasikan pada Langkah c.

Lihat bagian Case 4: Allow only traffic of specific protocols to access ECS instances pada topik "Guidelines for using security groups and use cases".
-
-
Kirim paket dari client uji ke instans ECS:
ping 47.xx.xx.109Ganti alamat IP dengan EIP yang diasosiasikan dengan eth1.
-
Monitor paket ICMP pada eth0 dan eth1 instans ECS.
-
Tangkap paket ICMP pada
eth0:tcpdump -i eth0 icmp -
Buka jendela baru dan tangkap paket ICMP pada
eth1:tcpdump -i eth1 icmp
-
-
Lihat hasilnya.
Rute berbasis kebijakan belum dikonfigurasi
Paket masuk melalui eth1 tetapi paket balasan keluar melalui eth0. Instans menerima melalui eth1 dan merespons melalui eth0.

Rute default eth0 memiliki prioritas 100, lebih tinggi daripada eth1, sehingga paket dikirim dari eth0.

Rute berbasis kebijakan telah dikonfigurasi
-
Konfigurasikan rute berbasis kebijakan. Lihat bagian Configure policy-based routes for ENIs pada topik ini.
ip -4 route add default via 172.16.20.253 dev eth1 table 1001 ip -4 rule add from 172.16.20.177 lookup 1001 -
Jalankan
ping <EIP>pada client uji. -
Monitor paket ICMP pada ENI.
Paket kini masuk dan keluar melalui eth1. Instans mengirim dan menerima melalui ENI yang sama berdasarkan prinsip source in-source-out.

-
Konfigurasikan rute default untuk ENI
Rute default dikonfigurasi secara otomatis saat Anda meng-bind ENI ke instans ECS. Namun, pada beberapa versi OS sebelum Ubuntu 18, seperti Ubuntu 16, rute default mungkin tidak dikonfigurasi untuk ENI sekunder, yang menyebabkan masalah konektivitas jaringan. Ikuti langkah-langkah berikut untuk mengonfigurasi rute default secara manual.
Dalam contoh ini, digunakan Ubuntu 16 dan ENI sekunder eth1.
-
Lihat informasi ENI:
ip a
Output menunjukkan bahwa eth1 telah berlaku di sistem operasi.
-
Lihat informasi rute:
route -nOutput menunjukkan bahwa eth1 hanya memiliki rute internal dan tidak memiliki rute arah keluar.

-
Konfigurasikan rute default untuk eth1:
ip -4 route add default via 172.16.20.253 dev eth1 metric 200-
-4: hanya berlaku untuk Alamat IPv4. -
172.16.20.253: alamat gateway eth1. -
metric 200: prioritas rute. Nilai yang lebih kecil menunjukkan prioritas lebih tinggi. Ketika terdapat beberapa rute ke tujuan yang sama, rute dengan metrik terkecil yang digunakan.
-
-
Pertahankan konfigurasi rute setelah restart.
Tambahkan perintah rute ke konfigurasi startup instans agar tetap tersimpan. Jika tidak, rute akan hilang setelah restart. Lewati langkah ini jika Anda hanya melakukan pengujian.
-
Buka
/etc/rc.local:vim /etc/rc.local -
Tekan
iuntuk masuk ke mode Insert, tambahkan perintah dari langkah sebelumnya, lalu tekanEsc. Masukkan:wqdan tekan Enter untuk menyimpan serta menutup file.CatatanGanti identifikasi antarmuka jaringan dan alamat gateway dengan nilai aktual Anda.
-
Berikan izin eksekusi pada
/etc/rc.local:sudo chmod +x /etc/rc.local
-
-
Lihat rute yang ditambahkan untuk eth1:
route -n

