Bagaimana cara NAT ke berbagai antarmuka di linux?


0

Saya memiliki server Ubuntu 12.04 dengan 4 antarmuka ethernet, 2 di antaranya terhubung ke perangkat jaringan yang tidak dapat dikonfigurasi pada eth5 dan eth6. Setiap perangkat hanya dapat dihubungi pada 192.168.100.1 melalui telnet. Saya percaya NAT dapat memberi saya cara untuk menjangkau kedua perangkat. Solusi lain dipersilakan.

Yang ingin saya lakukan adalah sesuatu seperti ini: telnet 192.168.1.100 dan minta diterjemahkan ke 192.168.100.1 di eth5. Saya juga ingin telnet 192.168.1.101 dan minta diterjemahkan ke 192.168.100.1 di eth6. Dengan cara ini, saya memiliki semacam IP alias yang menggunakan antarmuka ethernet tertentu. Tanpa solusi seperti ini, saya jelas memiliki konflik IP.

Kebanyakan tutorial NAT yang saya lihat berkaitan dengan berbagi koneksi internet. Saya mencoba melakukan sesuatu yang lebih sederhana, tetapi sepertinya tidak berdokumen.

Ada tips?

Jawaban:


0

NAT (atau Terjemahan Alamat Jaringan ) memperlakukan semua IP 'dalam' sebagai satu 'luar' IP (penyamaran IP) untuk memungkinkan beberapa perangkat lokal untuk terhubung ke koneksi luar yang sama (misalnya router wifi yang dihubungkan ke modem kabel memiliki NAT (dan mungkin DHCP) diaktifkan untuk memungkinkan perangkat untuk terhubung ke internet melalui IP tunggal yang diberikan kepada Anda melalui ISP Anda).

Apa yang Anda minta (dari apa yang saya duga) adalah IP alias , ini memungkinkan Anda untuk memiliki satu antarmuka fisik (katakanlah eth0 ) dan 'tetapkan' beberapa IP.

Misalnya, Anda memiliki /etc/sysconfig/network-scripts/eth0 file konfigurasi dengan yang berikut di dalamnya:

DEVICE=eth0
IPADDR=192.168.1.100
NETMASK=255.255.255.0
NETWORK=192.168.1.0
BROADCAST=192.168.1.255
ONBOOT=yes
NAME="192.168.1.100 (eth0)"
BOOTPROTO=none
USERCTL=no

File konfigurasi ini akan menetapkan IP 192.168.1.100 ke perangkat eth0. Jadi dari komputer lain Anda bisa melakukan ping 192.168.1.100 dan itu akan pergi ke perangkat eth0 mesin Anda. Jika kamu mau eth0 juga 'melihat' lalu lintas dari 10.0.0.0 jaringan juga tanpa menambahkan router atau iptables / PF dalam campuran, Anda bisa alias IP ke eth0 antarmuka dengan melakukan hal berikut:

buat file perangkat yang ingin Anda tambahkan alias, dalam hal ini adalah eth0 file konfigurasi, tetapi tambahkan :X (dimana X adalah jumlah alias yang ingin Anda tetapkan), contoh: /etc/sysconfig/network-scripts/eth0:1. File ini kemudian akan berisi info alias yang ingin Anda tambahkan, misalnya:

DEVICE=eth0:1
IPADDR=10.0.0.100
NETMASK=255.255.255.0
NETWORK=10.0.0.0
BROADCAST=10.0.0.255
ONBOOT=yes
NAME="10.0.0.100 (eth0:1)"
BOOTPROTO=none
USERCTL=no

Menambahkan file konfigurasi ini akan memungkinkan Anda untuk berkomunikasi dengan keduanya 192.168.1.100 dan 10.0.0.100 Melalui eth0 perangkat fisik.

Jika di sisi lain Anda menginginkan lalu lintas di satu antarmuka fisik untuk diteruskan ke antarmuka fisik lain, Anda harus mempertimbangkan untuk menggunakannya iptables untuk melakukan ini.

Berdasarkan pertanyaan Anda, meskipun Anda bertanya tentang pengiriman lalu lintas dari 2 IP yang berbeda ( 192.168.1.100 dan 192.168.1.101 ) untuk 2 memisahkan NIC ( eth5 dan eth6 ) yang tampaknya berbagi IP yang sama ( 192.168.100.1 ). Saya tidak yakin bagaimana Anda eth5 dan eth6 saat ini dikonfigurasi, tetapi jika mereka dalam ikatan untuk 'berbagi' IP yang sama maka Anda mungkin tidak dapat mencapai apa yang Anda inginkan dengan aliasing IP dan harus melihat iptables sebagai gantinya.

Saya harap ini bisa menambah kejelasan.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.