Linux router + KVM

Martin Tiršel lk na blackpage.eu
Neděle Únor 20 23:50:38 CET 2011


On Thu, 03 Feb 2011 12:22:04 +0100, Jan Houstek <Jan na houstek.net> wrote:

> 1) předělat hostitel (router) tak, aby místo eth0 a eth1 používal bridge
> br0, br1, ve kterých budou ty fyzické interfacy zařazení. Je třeba mít
> nainstalované bridge-utils. Debian už jsem nějaký čas neviděl, ale tuším
> že se to dělalo v /etc/network/interfaces nějak takto:
>
> iface eth0 inet manual	# zabrani cokoliv nakonfigurovat primo na eth0
>
> iface br0 inet static
>    bridge_ports eth0
>    address ...		# nastaveni co puvodne bylo u eth0
>    netmask ...
>
> 2) upravit všude na hostiteli ethX -> brX (iptables, síťové služby, pokud
> mají v konfiguraci interface kde poslouchají ...)

Tak som podla Vasej rady previedol taketo nastavenie, ale nech sa snazim  
akokolvek, nedokazem rozbehat NAT. System je Debian Squeeze. Nastavenie v  
/etc/network/interfaces vyzera nasledovne:


auto lo
iface lo inet loopback

# Internet
auto br0

# Local network
auto br1

iface eth0 inet manual

iface br0 inet static
	address 1.2.3.3
	netmask 255.255.255.248
	network 1.2.3.0
	broadcast 1.2.3.7
	gateway 1.2.3.1
	# dns-* options are implemented by the resolvconf package, if installed
	dns-nameservers 1.2.4.3 1.2.4.4
	dns-search domena.sk
	bridge_ports eth0


iface eth1 inet manual

iface br1 inet static
	address 192.168.1.1
	netmask 255.255.255.0
	network 192.168.1.0
	broadcast 192.168.1.255
	bridge_ports eth1


iptables v if-up.d som nastavil takto:


iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A POSTROUTING -o br0 -j MASQUERADE

A aj route -n vyzera ok:

route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use  
Iface
1.2.3.0    0.0.0.0         255.255.255.248 U     0      0        0 br0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 br1
0.0.0.0         1.2.3.1    0.0.0.0         UG    0      0        0 br0

Z lokalnej siete sa ale nedostanem vobec von, nepingnem ani 1.2.3.1  
router, spojenie na server z lokalu je v poriadku. Ak tieto nastavenia  
preniesiem do virtualu (Debian Lenny), ktory je nad tymto fyzickym strojom  
a pouzijem v nom eth0 (realne vnet0), eth1 (realne vnet1), tak cez virtual  
to NATuje. Este vypis brctl:


brctl show
bridge name	bridge id		STP enabled	interfaces
br0		8000.0013f7d1ea3c	no		eth0
							vnet0
br1		8000.001fc6834ad7	no		eth1
							vnet1


Vie niekto poradit, co treba spravit, aby som spojazdnil internet na  
lokalnej sieti zapojenej cez br1?

Dakujem,
M. Tirsel


Další informace o konferenci Linux