summaryrefslogtreecommitdiff
path: root/microkernel/mach/gnumach/ports/xen/networking_configuration.mdwn
blob: a41e1e6460b1b328a055b991eb10d0949c3979cb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]]

[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
id="license" text="Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License, Version 1.2 or
any later version published by the Free Software Foundation; with no Invariant
Sections, no Front-Cover Texts, and no Back-Cover Texts.  A copy of the license
is included in the section entitled
[[GNU Free Documentation License|/fdl]]."]]"""]]

[[!toc]]

The Xen dom0 infrastructure provides for a bridged networking setup using shell
scripts to configure the bridging device properly and attach the domUs' virtual
interfaces to the bridge.  However, we've [seen
problems](http://lists.gnu.org/archive/html/bug-hurd/2008-08/msg00023.html)
when using this approach, so to [solve these
issues](http://lists.gnu.org/archive/html/bug-hurd/2008-09/msg00071.html),
instead suggest the following configuration method (to achieve the same thing).

This is for a Debian dom0.

# */etc/network/interfaces*

Comment out everything referencing your physical devices.  Add this:

    auto br0
    iface br0 inet dhcp
    	bridge_ports regex (eth|vif).* noregex

... or if you want to do the manual configuration dance:

    auto br0
    iface br0 inet static
    	bridge_ports regex (eth|vif).* noregex
    	address 192.168.10.60
    	netmask 255.255.255.0
    	[...]

This needs a version of the `bridge-utils` package more recent than the current
Debian stable one ([[!debbug 405215]]).  (It's trivial to rebuild the `dpkg` of,
e.g., the Debian testing one on Debian stable.)

# */etc/xen/xend-config.sxp*

Make sure that only `(network-script network-dummy)` and `(vif-script
vif-bridge)` are activated and all other `(network-script network-WHATEVER)`,
respective `(vif-script vif-WHATEVER)` are commented out.


# Sample configuration files on Debian Lenny

## /etc/xen/hurd on dom0

    kernel = "/boot/gnumach-xen"
    memory = 256
    disk = ['phy:sda5,hda,w']
    extra = "root=device:hd0"
    vif = [ 'mac=00:16:3e:00:00:00, bridge=br0' ]
    ramdisk = "/boot/hurd-modules"

/dev/sda5 is an extended partition. br0 is bridge interface on dom0.

## /etc/xen/xend-config.sxp on dom0

    (network-script 'network-bridge netdev=br0')
    (dom0-min-mem 196)
    (dom0-cpus 0)
    (vncpasswd '')

## /etc/network/interfaces  on dom0

    auto br0
      iface br0 inet static
        address 192.168.1.211
        network 192.168.1.0
        netmask 255.255.255.0
        broadcast 192.168.1.255
        gateway 192.168.1.1
        bridge_ports eth1

eth1 is the interface that is connected to the Internet on the LAN:

## Doing settrans on domU

    settrans -fgap /servers/socket/2 /hurd/pfinet -i /dev/eth0 -a 192.168.1.210 -g 192.168.1.1 -m 255.255.255.0

## /sbin/ifconfig on dom0 

    br0       Link encap:Ethernet  HWaddr 00:19:d1:2e:06:33  
              inet addr:192.168.1.211  Bcast:192.168.1.255  Mask:255.255.255.0
              inet6 addr: fe80::219:d1ff:fe2e:633/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:14187 errors:0 dropped:0 overruns:0 frame:0
              TX packets:9214 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0 
              RX bytes:936563 (914.6 KiB)  TX bytes:746184 (728.6 KiB)

    eth1      Link encap:Ethernet  HWaddr 00:19:d1:2e:06:33  
              inet6 addr: fe80::219:d1ff:fe2e:633/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:34339 errors:0 dropped:0 overruns:0 frame:0
              TX packets:18526 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000 
              RX bytes:3019251 (2.8 MiB)  TX bytes:1453672 (1.3 MiB)