/[pxelator]/lib/PXElator/network.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /lib/PXElator/network.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 140 by dpavlin, Tue Aug 4 17:16:11 2009 UTC revision 229 by dpavlin, Sun Aug 16 21:35:23 2009 UTC
# Line 12  sub ifconfig { Line 12  sub ifconfig {
12          `/sbin/ifconfig $dev`          `/sbin/ifconfig $dev`
13  }  }
14    
15    sub setup {
16    
17            if ( my $dev = $ENV{DEV} ) {
18                    warn "W: running under device $dev, not configuring network\n";
19                    return;
20            }
21    
22            my $ifconfig = ifconfig('virtual');
23            if ( $ifconfig !~ m{UP} ) {
24                    system "brctl addbr virtual";
25                    system "brctl setfd virtual 0";
26                    system("/sbin/ifconfig virtual $server::ip netmask $server::netmask") == 0 || warn "W: $!";
27            } else {
28                    warn "OK $ifconfig\n";
29            }
30    }
31    
32  sub tap {  sub tap {
33    
34            if ( my $dev = $ENV{DEV} ) {
35                    warn "W: running under device $dev, not configuring tap0\n";
36                    return;
37            }
38    
39            if ( $server::ip !~ m{^172} ) {
40                    warn "W: server ip mismetch, not configuring tap0\n";
41                    return;
42            }
43    
44          my $interfaces = read_file '/etc/network/interfaces';          my $interfaces = read_file '/etc/network/interfaces';
45    
46          if ( $interfaces !~ m{tap0}s ) {          if ( $interfaces !~ m{tap0}s ) {
47    
48                  system "sudo apt-get install vde2";                  system "sudo apt-get install -y vde2";
49    
50                  write_file '/tmp/interfaces', qq{                  write_file '/tmp/interfaces', qq{
51    
# Line 27  iface tap0 inet static Line 54  iface tap0 inet static
54          address $server::ip          address $server::ip
55          netmask $server::netmask          netmask $server::netmask
56          vde2-switch -          vde2-switch -
57            # setup NAT for vde network
58            post-up sysctl -w net.ipv4.ip_forward=1
59            post-up iptables -t nat -A POSTROUTING -s $server::ip/$server::netmask -o wlan0 -j MASQUERADE
60    
61                  };                  };
62    

Legend:
Removed from v.140  
changed lines
  Added in v.229

  ViewVC Help
Powered by ViewVC 1.1.26