Создать интерфейс моста

Создать интерфейс моста

Я работаю над одной Linux-машиной. Хочу что-то вроде этого.

сеть--->wlan0---->eth0-->другой сервер.

Интерфейсы wlan0 и eth0 находятся внутри одного и того же Linux-компьютера. Я использую dhcp, который назначает что-то вроде 192.168.3.21 моему интерфейсу wlan0. Я назначаю статический IP, скажем, 192.168.3.101 моему интерфейсу eth0 и 192.168.3.102 другому серверу. Теперь я хочу отправить ping из сети (192.168.3.XX) на другой сервер по адресу 192.168.3.102 и мой eth0 по адресу 192.168.3.101. Я не могу этого сделать.

Я даже не могу пропинговать свой другой сервер по адресу 192.168.3.102 со своего Linux-компьютера.

Я включил переадресацию IP с помощью команды «echo 1 > /proc/sys/net/ipv4/ip_forward».

Я также использовал следующую команду для включения NAT-переадресации.

iptables -A FORWARD -i wlan0 -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth0 -o wlan0 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Я все еще не могу выполнить пинг.

Пожалуйста, дайте мне знать, что я упускаю. Любая помощь будет оценена по достоинству.

Вот вывод iptables-save:-

# Generated by iptables-save v1.6.0 on Mon Feb 19 10:17:54 2018
*raw
:PREROUTING ACCEPT [481:39595]
:OUTPUT ACCEPT [325:24634]
COMMIT
# Completed on Mon Feb 19 10:17:54 2018
# Generated by iptables-save v1.6.0 on Mon Feb 19 10:17:54 2018
*nat
:PREROUTING ACCEPT [1:229]
:INPUT ACCEPT [1:229]
:OUTPUT ACCEPT [1:76]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -o wlan0 -j MASQUERADE
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
# Completed on Mon Feb 19 10:17:54 2018
# Generated by iptables-save v1.6.0 on Mon Feb 19 10:17:54 2018
*mangle
:PREROUTING ACCEPT [482:39927]
:INPUT ACCEPT [474:38801]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [325:24634]
:POSTROUTING ACCEPT [325:24634]
COMMIT
# Completed on Mon Feb 19 10:17:54 2018
# Generated by iptables-save v1.6.0 on Mon Feb 19 10:17:54 2018
*filter
:INPUT ACCEPT [63:6229]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1:76]
-A FORWARD -i wlan0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
COMMIT
# Completed on Mon Feb 19 10:17:54 2018

Вот мой вывод для ip route:-

по умолчанию через 192.168.0.1 dev wlan0 metric 10 192.168.0.0/24 dev wlan0 proto kernel scope link src 192.168.0.190 192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.235

решение1

Если вы хотите иметьмаршрутизаторс двумя интерфейсами они должны быть в разных подсетях (например, 192.168.0.0/24 отделен от 192.168.5.0/24). У вас здесь конфликт, видимый в вашем ip route, это не будет работать.

Если вы хотите использовать одну и ту же подсеть на обоих интерфейсах, то это не маршрутизатор, а двухпортовый коммутатор, который обычно называютмост.

  • Вы можете создать один мостовой интерфейс и назначить ему один IP-адрес, возможно, через DHCP.
  • Wlan0 и eth0 следует оставить без IP-адресов, они станут прозрачными членами моста.

решение2

Чтобы соединить две разные сети, необходимо использовать мост, как показано ниже:

Создать интерфейс моста

brctl addbr br0

Добавить интерфейсы к мосту

brctl addif eth0

brctl addif wan0

Интерфейсы без IP.

ifconfig eth0 0.0.0.0 promisc up

ifconfig wan0 0.0.0.0 promisc up

Включить интерфейс моста

ifconfig br0 10.0.1.1 netmask 255.255.255.0 broadcast 10.0.1.255 

Связанный контент