Ik heb momenteel (tijdelijk
) twee verbindingen met internet: via de kabel en via mxstream...
Ik krijg het alleen niet voor elkaar om de routes (en firewall) goed te krijgen.
Ik wil namelijk graag dat beide externe ipadressen vanaf het internet bereikbaar zijn. Maar stuur ik een ping op de een af is de andere niet bereikbaar en na een aanpassing in de routingtabel is het weer net andersom...
Iemand een idee?
Routing tabel:
Destination Gateway Genmask Flags Metric Ref Use Iface
local-IP-mxstream 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
remote-IP-mxstream 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth2
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
131.174.116.0 0.0.0.0 255.255.252.0 U 0 0 0 eth0
0.0.0.0 131.174.116.7 0.0.0.0 UG 0 0 0 eth0
firewall:
echo "1" > /proc/sys/net/ipv4/ip_forward
int_if="eth1"
int_net="192.168.0.0/24"
ext_if="eth0"
ext_ip="kabel-ip"
br_if="eth2"
br_ip="10.0.0.150"
br_net="10.0.0.0/24"
mx_if="ppp0"
mx_ip="mx-stream-ip"
ipchains -F input
ipchains -P input REJECT
ipchains -A input -i $int_if -s $int_net -d 0.0.0.0/0 -j ACCEPT
ipchains -A input -i $int_if -s $int_net -d $int_net -j ACCEPT
ipchains -A input -i $br_if -s $br_net -d 0.0.0.0/0 -j ACCEPT
ipchains -A input -i $br_if -s $br_net -d $br_net -j ACCEPT
ipchains -A input -i lo -s 0.0.0.0/0 -d 0.0.0.0/0 -j ACCEPT
ipchains -A input -i $int_if -s 0.0.0.0/0 -d 255.255.255.255/32 -j ACCEPT
ipchains -A input -s 0.0.0.0/0 -d 0.0.0.0/0 -j REJECT --log
ipchains -F output
ipchains -P output REJECT
ipchains -A output -i $int_if -s 0.0.0.0/0 -d $int_net -j ACCEPT
ipchains -A output -i $int_if -s $int_net -d $int_net -j ACCEPT
ipchains -A output -i $br_if -s 0.0.0.0/0 -d $br_net -j ACCEPT
ipchains -A output -i $int_if -s $br_net -d $br_net -j ACCEPT
ipchains -A output -i $ext_if -s 0.0.0.0/0 -d $int_net -l -j REJECT
ipchains -A output -i $mx_if -s 0.0.0.0/0 -d $int_net -l -j REJECT
ipchains -A output -i $ext_if -s $int_net -d 0.0.0.0/0 -l -j REJECT
ipchains -A output -i $mx_if -s $int_net -d 0.0.0.0/0 -l -j REJECT
ipchains -A output -i $mx_if -s $mx_ip/32 -d 0.0.0.0/0 -j ACCEPT
ipchains -A output -i lo -s 0.0.0.0/0 -d 0.0.0.0/0 -j ACCEPT
ipchains -A output -i $int_if -s $int_net -d 0.0.0.0/0 -j ACCEPT
ipchains -A output -s 0.0.0.0/0 -d 0.0.0.0/0 -l -j REJECT
ipchains -F forward
ipchains -P forward DENY
ipchains -A forward -i $ext_if -s $int_net -d 0.0.0.0/0 -j MASQ
ipchains -A forward -i $mx_if -s $int_net -d 0.0.0.0/0 -j MASQ
ipchains -A forward -i $int_if -s $int_net -d $int_net -j ACCEPT
ipchains -A forward -s 0.0.0.0/0 -d 0.0.0.0/0 -l -j REJECT
Ik krijg het alleen niet voor elkaar om de routes (en firewall) goed te krijgen.
Ik wil namelijk graag dat beide externe ipadressen vanaf het internet bereikbaar zijn. Maar stuur ik een ping op de een af is de andere niet bereikbaar en na een aanpassing in de routingtabel is het weer net andersom...
Iemand een idee?
Routing tabel:
Destination Gateway Genmask Flags Metric Ref Use Iface
local-IP-mxstream 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
remote-IP-mxstream 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth2
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
131.174.116.0 0.0.0.0 255.255.252.0 U 0 0 0 eth0
0.0.0.0 131.174.116.7 0.0.0.0 UG 0 0 0 eth0
firewall:
echo "1" > /proc/sys/net/ipv4/ip_forward
int_if="eth1"
int_net="192.168.0.0/24"
ext_if="eth0"
ext_ip="kabel-ip"
br_if="eth2"
br_ip="10.0.0.150"
br_net="10.0.0.0/24"
mx_if="ppp0"
mx_ip="mx-stream-ip"
ipchains -F input
ipchains -P input REJECT
ipchains -A input -i $int_if -s $int_net -d 0.0.0.0/0 -j ACCEPT
ipchains -A input -i $int_if -s $int_net -d $int_net -j ACCEPT
ipchains -A input -i $br_if -s $br_net -d 0.0.0.0/0 -j ACCEPT
ipchains -A input -i $br_if -s $br_net -d $br_net -j ACCEPT
ipchains -A input -i lo -s 0.0.0.0/0 -d 0.0.0.0/0 -j ACCEPT
ipchains -A input -i $int_if -s 0.0.0.0/0 -d 255.255.255.255/32 -j ACCEPT
ipchains -A input -s 0.0.0.0/0 -d 0.0.0.0/0 -j REJECT --log
ipchains -F output
ipchains -P output REJECT
ipchains -A output -i $int_if -s 0.0.0.0/0 -d $int_net -j ACCEPT
ipchains -A output -i $int_if -s $int_net -d $int_net -j ACCEPT
ipchains -A output -i $br_if -s 0.0.0.0/0 -d $br_net -j ACCEPT
ipchains -A output -i $int_if -s $br_net -d $br_net -j ACCEPT
ipchains -A output -i $ext_if -s 0.0.0.0/0 -d $int_net -l -j REJECT
ipchains -A output -i $mx_if -s 0.0.0.0/0 -d $int_net -l -j REJECT
ipchains -A output -i $ext_if -s $int_net -d 0.0.0.0/0 -l -j REJECT
ipchains -A output -i $mx_if -s $int_net -d 0.0.0.0/0 -l -j REJECT
ipchains -A output -i $mx_if -s $mx_ip/32 -d 0.0.0.0/0 -j ACCEPT
ipchains -A output -i lo -s 0.0.0.0/0 -d 0.0.0.0/0 -j ACCEPT
ipchains -A output -i $int_if -s $int_net -d 0.0.0.0/0 -j ACCEPT
ipchains -A output -s 0.0.0.0/0 -d 0.0.0.0/0 -l -j REJECT
ipchains -F forward
ipchains -P forward DENY
ipchains -A forward -i $ext_if -s $int_net -d 0.0.0.0/0 -j MASQ
ipchains -A forward -i $mx_if -s $int_net -d 0.0.0.0/0 -j MASQ
ipchains -A forward -i $int_if -s $int_net -d $int_net -j ACCEPT
ipchains -A forward -s 0.0.0.0/0 -d 0.0.0.0/0 -l -j REJECT