Changeset 3121 in /cluster/svnroot


Ignore:
Timestamp:
Apr 13, 2011 3:51:42 PM (10 years ago)
Author:
fitz
Message:

Merge skylar's fixes for #609 into milestone:3.0.3

Location:
bccd-ng/branches/rc-3.0.3/trees
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • bccd-ng/branches/rc-3.0.3/trees/bin/bccd-nic-setup

    r2749 r3121  
    3434if(! -f $LOCK_FILE) {
    3535
    36         my($Bccd,$nic_conf,$response,$d,$rc);
     36        my($Bccd,$nic_conf,$response,$d,$out,$rc);
    3737       
    3838        $Bccd = new Bccd();
     
    6262        $nic_conf = $Bccd->config_nic_dialog($d,$nic_conf);
    6363       
    64         $Bccd->config_interfaces($nic_conf);
    65         $Bccd->config_dhcp($nic_conf);
     64        $nic_conf = $Bccd->config_interfaces($nic_conf);
     65        $nic_conf = $Bccd->config_dhcp($nic_conf);
     66
     67        ($out,$rc) = $Bccd->run_test("system","","Starting networking","/etc/init.d/networking start"); # No invoke-rc.d because utmp has not been updated
     68        if(!$rc) {
     69                $Bccd->log_and_cont("ERROR",'main',"Couldn't start networking: $out");
     70        }
     71
     72        $Bccd->config_nat($nic_conf);
     73
    6674        $rc = touch($LOCK_FILE);
    6775        if(!$rc) {
  • bccd-ng/branches/rc-3.0.3/trees/bin/bccd-reset-network

    r3050 r3121  
    8282fi
    8383
    84 ${LOGCMD} -p info "Running bccd-nat"
    85 /bin/bccd-nat
    86 RC=$?
    87 if [ ${RC} -ne 0 ]; then
    88         fatal -m "bccd-nat failed" -r ${RC}
    89 fi
     84#${LOGCMD} -p info "Running bccd-nat"
     85#/bin/bccd-nat
     86#RC=$?
     87#if [ ${RC} -ne 0 ]; then
     88#       fatal -m "bccd-nat failed" -r ${RC}
     89#fi
    9090
    9191${LOGCMD} -p info "Starting networking again"
  • bccd-ng/branches/rc-3.0.3/trees/usr/local/lib/site_perl/5.10.0/Bccd.pm

    r2944 r3121  
    18771877    close($INT);
    18781878    $self->leave_sub($sub);
     1879
     1880        return $nic_conf;
    18791881}
    18801882
     
    21602162        }
    21612163    }
    2162    
     2164    return $nic_conf;
    21632165}
    21642166
    21652167sub config_nat{
    2166         my($self) = @_;
     2168        my($self,$nic_conf) = @_;
    21672169        my($natnic,$sub);
    21682170        $sub = 'config_nat';
     
    21702172                $self->log_and_cont('INFO',$sub,"Gathering routing information");
    21712173        }
    2172         open(my $NETSTAT, '-|', '/bin/netstat', '-rn') or
    2173                 $self->log_and_die("ERROR",$sub,"Couldn't open up netstat for piping!");
    2174 
    2175         NETSTAT:
    2176         while(my $line = <$NETSTAT>) {
    2177                 chomp $line;
    2178                 my @splitline = split(/\s+/, $line);
    2179                 if($splitline[0] eq '0.0.0.0') {
    2180                 if($self->is_log($INFO) || $self->is_log($DEBUG)) {
    2181                                 $self->log_and_cont('INFO',$sub,"$splitline[7] is a default router");
    2182                         }
    2183                         $natnic = $splitline[7];
    2184                         last NETSTAT;
    2185                 }
    2186         }
    2187         close($NETSTAT);
     2174
     2175    open(my $NETSTAT, '-|', '/bin/netstat', '-rn') or
     2176        $self->log_and_die("ERROR",$sub,"Couldn't open up netstat for piping!");
     2177
     2178    NETSTAT:
     2179    while(my $line = <$NETSTAT>) {
     2180        chomp $line;
     2181        my @splitline = split(/\s+/, $line);
     2182        if($splitline[0] eq '0.0.0.0') {
     2183            if($self->is_log($INFO) || $self->is_log($DEBUG)) {
     2184                $self->log_and_cont('INFO',$sub,"$splitline[7] is a default router");
     2185            }
     2186            $natnic = $splitline[7];
     2187            last NETSTAT;
     2188        }
     2189    }
     2190    close($NETSTAT);
    21882191
    21892192        if(defined($natnic)) {
     
    21942197                        $self->log_and_die("ERROR",$sub,"Couldn't open $NATSH for writing: $!");
    21952198
     2199                my $natip = $self->get_nic_ip($natnic);
     2200                if(!defined($natip)) {
     2201                        $self->log_and_die("ERROR",$sub,"Couldn't get IP address for $natnic!");
     2202                }
     2203
    21962204                print $NAT qq{#!/bin/bash\n\n};
    21972205                foreach my $LINE (
     
    22002208                                                                q{--delete-chain},
    22012209                                                                q{-t nat --delete-chain},
    2202                                                                 qq{-t nat -A POSTROUTING -s 192.168.3.0/24 -j SNAT --to-source }.$self->get_nic_ip($natnic)
     2210                                                                qq{-t nat -A POSTROUTING -s 192.168.3.0/24 -j SNAT --to $natip},
    22032211                                                        ) {
    22042212                        print $NAT "/sbin/iptables $LINE\n";
     
    23362344        }
    23372345    }
    2338    
     2346
    23392347    return $nic_conf;
    23402348}
Note: See TracChangeset for help on using the changeset viewer.