Konfigurasi 1: 1 Nat menggunakan Firewalld untuk VM

10

Saya telah menyiapkan 2 vm di dalam server saya dan saya mencoba untuk menyiapkan NAT 1: 1 untuk mereka dengan firewalld di CentOS 7. Saat ini kedua vm berada di belakang jembatan virtual (virbr0, vnet0, vnet1) dan saya telah membuat salinan NIC untuk setiap IP yang akan digunakan dengannya. Saya ingin mengaturnya seperti ini:

eth0: 0 (IP publik) -----> vnet0 (IP internal); eth0: 1 (IP publik) -----> vnet1 (IP internal)

Cara saya memahaminya adalah saya mencari NAT 1: 1 tapi saya tidak yakin bagaimana mengaturnya. Saya awalnya mengkonfigurasi segala sesuatu dengan jembatan tetapi penyedia hosting tidak memungkinkan untuk jembatan di jaringan, mac imajiner dari virtual nic's mendapatkan semuanya ditendang dari jaringan.

Saya sudah mencoba beberapa hal tetapi saya belum merasa nyaman dengan firewalld.

dstana
sumber
Jadi inilah yang saya lakukan sejauh ini, pada akhirnya saya mencoba untuk mendapatkan VM ini untuk memiliki IP publik. Itu perhatian utama saya. Saya sudah menyiapkan 2 jembatan virtual (virbr1, virb2) masing-masing memiliki VM itu sendiri. Dan mereka diatur dengan nat seperti ini: eth0: 0 -> virbr1 -> vnet0; eth0: 1 -> virbr2 -> vnet1 Semuanya berhasil ok, tetapi ketika saya mencoba ssh ke IP yang ditugaskan ke eth0: 0 Saya masih mendapatkan server utama.
dstana

Jawaban:

10

NAT dilakukan di tingkat firewall / router.

Tergantung pada firewall / router Anda, Anda dapat mengatur 1: 1 NAT satu-satunya hal yang perlu diingat adalah Anda hanya dapat mengatur satu port ke satu IP.

Jadi, jika Anda memiliki 2 server web, Anda harus menjalankan port yang berbeda (selain 80) agar NAT dapat berfungsi.

Anthony Fornito
sumber
Apakah ada cara untuk memilikinya sehingga antarmuka ke antarmuka bukan port forwarding? Atau IP ke IP?
dstana