/[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 229 by dpavlin, Sun Aug 16 21:35:23 2009 UTC revision 393 by dpavlin, Tue Sep 8 16:54:35 2009 UTC
# Line 6  use strict; Line 6  use strict;
6  use File::Slurp;  use File::Slurp;
7    
8  use server;  use server;
9    use ip;
10    
11  sub ifconfig {  sub ifconfig {
12          my $dev = shift;          my $dev = shift;
# Line 25  sub setup { Line 26  sub setup {
26                  system "brctl setfd virtual 0";                  system "brctl setfd virtual 0";
27                  system("/sbin/ifconfig virtual $server::ip netmask $server::netmask") == 0 || warn "W: $!";                  system("/sbin/ifconfig virtual $server::ip netmask $server::netmask") == 0 || warn "W: $!";
28          } else {          } else {
29                  warn "OK $ifconfig\n";                  warn "using existing virtual configuration\n$ifconfig\n";
30            }
31            if ( my $dev = ip::default_route_dev() ) {
32                    system "sudo sysctl -w net.ipv4.ip_forward=1";
33                    my $network = ip::from_int( ip::to_int($server::ip) & ip::to_int($server::netmask) );
34                    warn "# network $network";
35                    system "sudo iptables -t nat -L POSTROUTING -n | grep $network || sudo iptables -t nat -A POSTROUTING -s $server::ip/$server::netmask -o wlan0 -j MASQUERADE";
36                    warn "masquarade to $dev";
37          }          }
38  }  }
39    

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

  ViewVC Help
Powered by ViewVC 1.1.26