Changeset 3120 in /cluster/svnroot


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

Merge skylar's fixes for #609 into trunk.

Location:
bccd-ng/trunk/trees
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • bccd-ng/trunk/trees/bin/bccd-nic-setup

    r2749 r3120  
    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/trunk/trees/bin/bccd-reset-network

    r3050 r3120  
    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/trunk/trees/usr/local/lib/site_perl/5.10.0/Bccd.pm

    r3083 r3120  
    18821882    close($INT);
    18831883    $self->leave_sub($sub);
     1884
     1885        return $nic_conf;
    18841886}
    18851887
     
    21652167        }
    21662168    }
    2167    
     2169    return $nic_conf;
    21682170}
    21692171
    21702172sub config_nat{
    2171         my($self) = @_;
     2173        my($self,$nic_conf) = @_;
    21722174        my($natnic,$sub);
    21732175        $sub = 'config_nat';
     
    21752177                $self->log_and_cont('INFO',$sub,"Gathering routing information");
    21762178        }
    2177         open(my $NETSTAT, '-|', '/bin/netstat', '-rn') or
    2178                 $self->log_and_die("ERROR",$sub,"Couldn't open up netstat for piping!");
    2179 
    2180         NETSTAT:
    2181         while(my $line = <$NETSTAT>) {
    2182                 chomp $line;
    2183                 my @splitline = split(/\s+/, $line);
    2184                 if($splitline[0] eq '0.0.0.0') {
    2185                 if($self->is_log($INFO) || $self->is_log($DEBUG)) {
    2186                                 $self->log_and_cont('INFO',$sub,"$splitline[7] is a default router");
    2187                         }
    2188                         $natnic = $splitline[7];
    2189                         last NETSTAT;
    2190                 }
    2191         }
    2192         close($NETSTAT);
     2179
     2180    open(my $NETSTAT, '-|', '/bin/netstat', '-rn') or
     2181        $self->log_and_die("ERROR",$sub,"Couldn't open up netstat for piping!");
     2182
     2183    NETSTAT:
     2184    while(my $line = <$NETSTAT>) {
     2185        chomp $line;
     2186        my @splitline = split(/\s+/, $line);
     2187        if($splitline[0] eq '0.0.0.0') {
     2188            if($self->is_log($INFO) || $self->is_log($DEBUG)) {
     2189                $self->log_and_cont('INFO',$sub,"$splitline[7] is a default router");
     2190            }
     2191            $natnic = $splitline[7];
     2192            last NETSTAT;
     2193        }
     2194    }
     2195    close($NETSTAT);
    21932196
    21942197        if(defined($natnic)) {
     
    21992202                        $self->log_and_die("ERROR",$sub,"Couldn't open $NATSH for writing: $!");
    22002203
     2204                my $natip = $self->get_nic_ip($natnic);
     2205                if(!defined($natip)) {
     2206                        $self->log_and_die("ERROR",$sub,"Couldn't get IP address for $natnic!");
     2207                }
     2208
    22012209                print $NAT qq{#!/bin/bash\n\n};
    22022210                foreach my $LINE (
     
    22052213                                                                q{--delete-chain},
    22062214                                                                q{-t nat --delete-chain},
    2207                                                                 qq{-t nat -A POSTROUTING -s 192.168.3.0/24 -j SNAT --to-source }.$self->get_nic_ip($natnic)
     2215                                                                qq{-t nat -A POSTROUTING -s 192.168.3.0/24 -j SNAT --to $natip},
    22082216                                                        ) {
    22092217                        print $NAT "/sbin/iptables $LINE\n";
     
    23632371        }
    23642372    }
     2373
    23652374    return $nic_conf;
    23662375}
Note: See TracChangeset for help on using the changeset viewer.