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 |
|
|