ok paul........heres the ifup script.......u really think the mistake is in
there ?......its a default script which came with my mandrake
distr..anyways.......here we go :

#!/bin/bash
PATH=/sbin:/usr/sbin:/bin:/usr/bin
 
cd /etc/sysconfig/network-scripts
.. network-functions
 
need_hostname
 
CONFIG=$1
 
[ -z "$CONFIG" ] && {
    echo "usage: ifup <device name>" >&2
    exit 1
}
 
[ -f "$CONFIG" ] || CONFIG=ifcfg-$CONFIG
[ -f "$CONFIG" ] || {
    echo "usage: ifup <device name>" >&2
    exit 1
}
 
if [ $UID != 0 ]; then
    if [ -x /usr/sbin/usernetctl ]; then
        exec /usr/sbin/usernetctl $CONFIG up
    fi
    echo "Users cannot control this device." >&2
    exit 1
fi
 
source_config
 
if [ "foo$2" = "fooboot" -a "${ONBOOT}" = "no" ]
then                                                    
 exit
fi
 
IPSETUP=no
 
DEVICETYPE=`echo $DEVICE | sed "s/[0-9]*$//"`
REALDEVICE=`echo $DEVICE | sed 's/:.*//g'`
if echo $DEVICE | grep -q ':' ; then
    ISALIAS=yes
else
    ISALIAS=no
fi
 
# Old BOOTP variable
if [ "$BOOTP" = "yes" ]; then
    BOOTPROTO=bootp
fi                          
if [ "$BOOTPROTO" = bootp -o "$BOOTPROTO" = dhcp ]; then
    DHCP=true
fi
if [ "$BOOTPROTO" = pump ]; then
    PUMP=true
fi
 
OTHERSCRIPT="/etc/sysconfig/network-scripts/ifup-${DEVICETYPE}"
 
if [ -x $OTHERSCRIPT ]; then
    exec $OTHERSCRIPT $CONFIG $2
fi
 
# is this device available? (this catches PCMCIA devices for us)
/sbin/ifconfig ${REALDEVICE} 2>&1 | grep -s "not found" > /dev/null
if [ "$?" = "0" ]; then                                        
    echo "Delaying ${DEVICE} initialization."
    exit 1
fi
 
if [ "$SLAVE" = yes -a "$ISALIAS" = no -a "$MASTER" != "" -a \
     -x /sbin/ifenslave ]; then
    RFLAG="" ; [ "$RECIEVE-ONLY" = yes ] && RFLAG="-r"
 
    ifconfig ${DEVICE} down
    echo "Enslaving $DEVICE to $MASTER"
    ifenslave $RFLAG "$MASTER" "$DEVICE"
 
    exit 0
fi
 
if [ -n "$MACADDR" ]; then
   ifconfig ${DEVICE} hw ether ${MACADDR}               
fi
 
if [ -n "$DHCP" ]; then
    echo -n "Determining IP information for $DEVICE via dhcpcd..."
    if /sbin/dhcpcd -i $DEVICE -h $HOSTNAME ; then
        echo " done."
    else
        echo " failed."
        exit 1
    fi
elif [ -n "$PUMP" ]; then
    echo -n "Determining IP information for $DEVICE via pump..."
    if /sbin/pump -i $DEVICE -h $HOSTNAME ; then
        echo " done."
    else
        echo " failed."
        exit 1                               
    fi
else
    if [ -z "$NETMASK" ]; then
        eval `/bin/ipcalc --netmask ${IPADDR}`
    fi
 
    if [ -z "$BROADCAST" ]; then
        eval `/bin/ipcalc --broadcast ${IPADDR} ${NETMASK}`
    fi
 
    if [ -z "$NETWORK" ]; then
        eval `/bin/ipcalc --network ${IPADDR} ${NETMASK}`
    fi
 
    ifconfig ${DEVICE} ${IPADDR} netmask ${NETMASK} broadcast ${BROADCAST}
    # don't re-add subnet route on 2.2 kernels, but add a route
    # to a non-local subnet.                            
   # stupid hack, but it should work
    if [ "$ISALIAS" = no ] && [ -z "`route -n | sed "s/ .*//" | grep ${NETWORK}$       
 route add -net ${NETWORK} netmask ${NETMASK} ${DEVICE}
    else
        route add -host ${IPADDR} ${DEVICE}
    fi
 
    # this is broken! it's only here for compatibility with old RH systems
    if [ "${GATEWAY}" != "" -a "${GATEWAY}" != "none" ]; then
        route add default gw ${GATEWAY} metric 1 ${DEVICE}
    fi
 
    . /etc/sysconfig/network
 
    if [ "${GATEWAY}" != "" ]; then
        if [ "${GATEWAYDEV}" = "" -o "${GATEWAYDEV}" = "${DEVICE}" ]; then
            # set up default gateway            
            route add default gw ${GATEWAY} ${DEVICE}
            DEFGW=${GATEWAY}
        fi
    fi
 
    if [ "$BOOTPROTO" = bootp -a "$ISALIAS" = no ]; then
        if [ -n "$GATEWAYS" ]; then
            for gw in $GATEWAYS; do
                if [ $gw != "${DEFGW}" ]; then
                    route add default gw $gw ${DEVICE}
                fi
            done
        fi
 
        if [ -n "$DNSSRVS" -a -n "$SEARCH" ]; then
            echo "search $SEARCH" > /etc/resolv.conf
            for dns in $DNSSRVS; do                     
                    echo "nameserver $dns" >> /etc/resolv.conf
            done
        fi
 
        if [ -n "$BOOTPHOSTNAME" -a -n "$NEEDHOSTNAME" ]; then
            set_hostname $BOOTPHOSTNAME
        fi
    fi
fi
 
if [ "$IPX" = yes ]; then
        /etc/sysconfig/network-scripts/ifup-ipx $DEVICE
fi
 
exec /etc/sysconfig/network-scripts/ifup-post $CONFIG             

hmm....looks rather complicated for me as a newbie.....maybe u find
something......(hope so)

greetings

--quay  

Reply via email to