Nowe posty

Autor Wątek: Routing 2xwan + 2xlan  (Przeczytany 2554 razy)

limahlowski

  • Gość
Routing 2xwan + 2xlan
« dnia: 2013-10-24, 08:39:39 »
Witam
Mam dwa lacza dsl (80.x.x.x i 83.x.x.x) podpiete do routera na centosie z ktorego wychodza dwie sieci lan (192.168.0.1/24 i 192.168.0.0/24).
Jak ustawic routing aby dla sieci 0.0 bramka byl dsl 80.x... a dla sieci 0.1 byl dsl 83.x...
Oczywiscie sieci powinny sie widziec wzajemnie.
W tej chwili jeden z dsl nie jest podnoszony i wszystko idzie jednym laczem przez nat.
Pzdr.

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 2988
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Routing 2xwan + 2xlan
« Odpowiedź #1 dnia: 2013-10-24, 13:20:49 »
Takie coś to Policy-Based-Routing.

Robisz tak:


#!/bin/sh

# Zakładam, że odpowiednie LANy są podpięte do
# eth0/eth1 a modemy do eth2/eth3

#WAN/LAN 1
LAN1NET="192.168.0.0/24"
LAN1DEV=eth0
WAN1IP="80.x.x.x"
WAN1DEV=eth2

#WAN/LAN 2
LAN2NET="192.168.1.0/24"
LAN2DEV=eth1
WAN2IP="83.x.x.x"
WAN2DEV=eth3


# UWAGA!
# Nigdzie przed LAN1RT i LAN2RT nie ma $ !!!
# To etykiety a nie zmienne!

# Dolozenie tablic routingu
grep -q LAN1RT /etc/iproute2/rt_tables || echo 201 LAN1RT >> /etc/iproute2/rt_tables
grep -q LAN2RT /etc/iproute2/rt_tables || echo 202 LAN2RT >> /etc/iproute2/rt_tables

# Dwie polityki kierujące ruch do odpowiednich tablic
ip rule add from $LAN1NET table LAN1RT
ip rule add from $LAN2NET table LAN2RT

# Routing dla obu tablic: Ruch do drugiej sieci bezpośrednio, pozostały przez WAN
ip route add to $LAN2NET dev $LAN2DEV table LAN1RT
ip route add default via $WAN1IP dev $WAN1DEV table LAN1RT

ip route add to $LAN1NET dev $LAN1DEV table LAN2RT
ip route add default via $WAN2IP dev $WAN2DEV table LAN2RT

ip route flush cache

# Na koniec NAT
iptables -t nat -A POSTROUTING -s $LAN1NET -o $WAN1DEV -j SNAT --to $WAN1IP
iptables -t nat -A POSTROUTING -s $LAN2NET -o $WAN2DEV -j SNAT --to $WAN2IP
Nie testowałem, ale powinno działać.
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

limahlowski

  • Gość
Routing 2xwan + 2xlan
« Odpowiedź #2 dnia: 2013-10-25, 20:18:29 »
Witam
Zrobilem wg przepisu i ... nie dziala ;P

Wie wiem czy ma znaczenie wykonanie, po tym co Pan polecil skryptu:

echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -F -t nat
iptables -X -t nat
iptables -F -t filter
iptables -X -t filter
iptables -t filter -P FORWARD DROP
iptables -A OUTPUT -m state -p icmp --state INVALID -j DROP
iptables -t filter -A FORWARD -s 192.168.1.0/255.255.255.0 -d 0/0 -j ACCEPT
iptables -t filter -A FORWARD -s 0/0 -d 192.168.1.0/255.255.255.0 -j ACCEPT
iptables -t filter -A FORWARD -s 192.168.0.0/255.255.255.0 -d 0/0 -j ACCEPT
iptables -t filter -A FORWARD -s 0/0 -d 192.168.0.0/255.255.255.0 -j ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -d 0/0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d 0/0 -j MASQUERADE

bo net na serwerze dziala a na koncowkach juz nie.

Pzdr.

Offline roobal

  • Users
  • Guru
  • *****
  • Wiadomości: 2056
    • Zobacz profil
Routing 2xwan + 2xlan
« Odpowiedź #3 dnia: 2013-10-26, 17:55:19 »
Blokujesz sobie ruch sieciowy, a nie zezwalasz na połączenia nawiązane. W ogóle ten skrypt kupy się nie trzyma. Jeśli chodzi o NAT, to można spróbować natować ruch również przy pomocy ip route.