
Eu tenho um servidor Ubuntu 12.04 com 4 interfaces Ethernet, 2 das quais se conectam a dispositivos de rede não configuráveis em eth5 e eth6. Cada dispositivo só pode ser acessado em 192.168.100.1 via telnet. Acredito que o NAT pode me fornecer uma maneira de acessar os dois dispositivos. Outras soluções são bem-vindas.
O que eu gostaria de fazer é algo assim: telnet 192.168.1.100
traduzir para 192.168.100.1 na eth5. Da mesma forma, gostaria que telnet 192.168.1.101
fosse traduzido para 192.168.100.1 na eth6. Dessa forma, tenho uma espécie de alias de IP que usa interfaces Ethernet específicas. Sem uma solução como esta, obviamente tenho um conflito de IP.
A maioria dos tutoriais de NAT que vejo tem a ver com compartilhamento de conexão com a Internet. Estou tentando fazer algo muito mais simples, mas aparentemente não documentado.
Alguma dica?
Responder1
NAT (ouTradução do Endereço da Rede) trata todos os IPs 'internos' como um único IP 'externo' (mascaramento de IP) para permitir que vários dispositivos locais se conectem à mesma conexão externa (por exemplo, um roteador wifi conectado a um modem a cabo tem NAT (e provavelmente DHCP) ativado para permitir que os dispositivos se conectem à Internet através do único IP atribuído a você através do seu ISP).
O que você está pedindo (pelo que eu poderia supor) éAliases de IP, isso permite que você tenha uma única interface física (digamos eth0
) e 'atribua a ela' vários IPs.
Por exemplo, digamos que você tenha um /etc/sysconfig/network-scripts/eth0
arquivo de configuração com o seguinte:
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
Este arquivo de configuração atribuiria o IP 192.168.1.100
ao dispositivo eth0
. Então, de outra máquina você poderia executar ping em 192.168.1.100 e ele iria para o dispositivo eth0 da sua máquina. Se você eth0
também quiser 'ver' o tráfego da 10.0.0.0
rede sem adicionar um roteador ou iptables/PF na mistura, você pode criar um alias de IP para a eth0
interface fazendo o seguinte:
crie um arquivo do dispositivo ao qual deseja adicionar um alias, no nosso caso é o eth0
arquivo de configuração, mas adicione um :X
(onde X
está o número do alias que você deseja atribuir), exemplo: /etc/sysconfig/network-scripts/eth0:1
. Este arquivo conteria as informações do alias que você deseja adicionar, por exemplo:
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
Adicionar este arquivo de configuração permitirá que você se comunique com ambos 192.168.1.100
e 10.0.0.100
através do eth0
dispositivo físico.
Se, por outro lado, você deseja que o tráfego em uma interface física seja encaminhado para outra interface física, considere usar iptables
para fazer isso.
Com base na sua pergunta, você está perguntando sobre o envio de tráfego de 2 IPs diferentes ( 192.168.1.100
e 192.168.1.101
) para 2 NICs separadas ( eth5
e eth6
) que parecem compartilhar o mesmo IP ( 192.168.100.1
). Não tenho certeza de como o seu eth5
e eth6
está configurado atualmente, mas se eles estiverem em um vínculo para 'compartilhar' o mesmo IP, talvez você não consiga o que deseja com o alias de IP e deve verificar o iptables.
Espero que isso possa adicionar alguma clareza.