У меня на узле два сетевых интерфейса. Одна - внутренняя сеть, другая - внешняя. Внутренняя сеть - 192.168.50.0/255.255.255.0
(внутренняя сеть).
А внешняя сеть - 192.168.0.0/255.255.255.0
. Kubernetes состоит из 192.168.50.0/255.255.255.0
. Я хочу подключиться к внутренней сети из других локальных узлов без использования внутреннего сетевого интерфейса. Как я могу решить эту проблему?
Без масок подсети я не понимаю, как они разные сети.
Но, в любом случае, вам нужно включить маршрутизацию пакетов с одного интерфейса на другой. Я предполагаю, что вы находитесь на узле Linux, там вы можете включить IP-переадресацию.
echo 1 >> /proc/sys/net/ipv4/ip_forward
Затем настройте некоторые правила в iptables для выполнения наттинга и пересылки:
Примеры правил:
# Always accept loopback traffic
iptables -A INPUT -i lo -j ACCEPT
# We allow traffic from the LAN side
iptables -A INPUT -i eth0 -j ACCEPT
######################################################################
#
# ROUTING
#
######################################################################
# eth0 is LAN
# eth1 is WAN
# Allow established connections
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# Masquerade.
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
# fowarding
iptables -A FORWARD -i eth1 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
# Allow outgoing connections from the LAN side.
iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT
https://serverfault.com/questions/453254/routing-between-two-networks-on-linux
@ K.k да, но этого недостаточно, поэтому я разместил ссылку
Не работает, но информации у меня много. Спасибо
пожалуйста, напишите свой вопрос еще раз, внутренняя сеть и внешняя сеть смешаны, также укажите маску подсети с каждой из них