[ Avaa Bypassed ]




Upload:

Command:

hmhc3928@3.142.42.247: ~ $
#!/bin/bash
# Network Interface Configuration System
# Copyright (c) 1996-2013 Red Hat, Inc. all rights reserved.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License, version 2,
# as published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

. /etc/init.d/functions

cd /etc/sysconfig/network-scripts
. ./network-functions

[ -f ../network ] && . ../network

CONFIG=${1}

source_config

# Allow the user to override the detection of our physical device by passing
# it in.  No checking is done, if the user gives us a bogus dev, it's
# their problem.
[ -n "${PHYSDEV}" ] && REALDEVICE="$PHYSDEV"

. /etc/sysconfig/network

# Check to make sure the device is actually up
check_device_down ${DEVICE} && exit 0

# If we are a P_Key device, we need to munge a few things
if [ "${PKEY}" = yes ]; then
	[ -z "${PKEY_ID}" ] && {
	        net_log $"InfiniBand IPoIB device: PKEY=yes requires a PKEY_ID"
	        exit 1
	}
	[ -z "${PHYSDEV}" ] && {
	        net_log $"InfiniBand IPoIB device: PKEY=yes requires a PHYSDEV"
	        exit 1
	}
	# Normalize our PKEY_ID to have the high bit set
	NEW_PKEY_ID=`printf "0x%04x" $(( 0x8000 | ${PKEY_ID} ))`
	NEW_PKEY_NAME=`printf "%04x" ${NEW_PKEY_ID}`
	[ "${DEVICE}" != "${PHYSDEV}.${NEW_PKEY_NAME}" ] && {
                net_log $"Configured DEVICE name does not match what new device name would be.  This
is most likely because once the PKEY_ID was normalized, it no longer
resulted in the expected device naming, and so the DEVICE entry in the
config file needs to be updated to match. This can also be caused by
giving PKEY_ID as a hex number but without using the mandatory 0x prefix.
	Configured DEVICE=$DEVICE
        Configured PHYSDEV=$PHYSDEV
        Configured PKEY_ID=$PKEY_ID
        Calculated PKEY_ID=$NEW_PKEY_ID
        Calculated name=${PHYSDEV}.${NEW_PKEY_NAME}"
                exit 1
        }
        [ -d "/sys/class/net/${DEVICE}" ] || exit 0
        # When we get to downing the IP address, we need REALDEVICE to
        # point to our PKEY device
        REALDEVICE="${DEVICE}"
fi


if [ "${SLAVE}" != "yes" -o -z "${MASTER}" ]; then
if [ -n "${HWADDR}" -a -z "${MACADDR}" ]; then
    HWADDR=$(echo $HWADDR | tail -c 24)
    FOUNDMACADDR=$(get_hwaddr ${REALDEVICE} | tail -c 24)
    if [ -n "${FOUNDMACADDR}" -a "${FOUNDMACADDR}" != "${HWADDR}" ]; then
        NEWCONFIG=$(get_config_by_hwaddr ${FOUNDMACADDR})
	if [ -n "${NEWCONFIG}" ]; then
	   eval $(LANG=C grep -F "DEVICE=" $NEWCONFIG)
	else
	   net_log $"Device ${DEVICE} has MAC address ${FOUNDMACADDR}, instead of configured address ${HWADDR}. Ignoring."
	   exit 1
	fi
	if [ -n "${NEWCONFIG}" -a "${NEWCONFIG##*/}" != "${CONFIG##*/}" -a "${DEVICE}" = "${REALDEVICE}" ]; then
	   exec /sbin/ifdown ${NEWCONFIG}
	else
	   net_log $"Device ${DEVICE} has MAC address ${FOUNDMACADDR}, instead of configured address ${HWADDR}. Ignoring."
	   exit 1
	fi
    fi
fi
fi

if is_bonding_device ${DEVICE} ; then
    for device in $(LANG=C grep -l "^[[:space:]]*MASTER=\"\?${DEVICE}\"\?\([[:space:]#]\|$\)" /etc/sysconfig/network-scripts/ifcfg-*) ; do
	is_ignored_file "$device" && continue
	/sbin/ifdown ${device##*/}
    done
    for arg in $BONDING_OPTS ; do
	key=${arg%%=*};
	[[ "${key}" != "arp_ip_target" ]] && continue
	value=${arg##*=};
	if [ "${value:0:1}" != "" ]; then
            OLDIFS=$IFS;
            IFS=',';
            for arp_ip in $value; do
		if grep -q $arp_ip /sys/class/net/${DEVICE}/bonding/arp_ip_target; then
                    echo "-$arp_ip" > /sys/class/net/${DEVICE}/bonding/arp_ip_target
		fi
            done
            IFS=$OLDIFS;
	else
	    value=${value#+};
	    if grep -q $value /sys/class/net/${DEVICE}/bonding/arp_ip_target; then
                echo "-$value" > /sys/class/net/${DEVICE}/bonding/arp_ip_target
	    fi
	fi
    done
fi

/etc/sysconfig/network-scripts/ifdown-ipv6 ${CONFIG}

retcode=0
[ -n "$(pidof -x dhclient)" ] && {
   for VER in "" 6 ; do
	if [ -f "/var/run/dhclient$VER-${DEVICE}.pid" ]; then
		dhcpid=$(cat /var/run/dhclient$VER-${DEVICE}.pid)
		generate_lease_file_name $VER
		if [[ "$DHCPRELEASE" = [yY1]* ]];  then
			/sbin/dhclient -r -lf ${LEASEFILE} -pf /var/run/dhclient$VER-${DEVICE}.pid ${DEVICE} >/dev/null 2>&1
			retcode=$?
		else
			kill $dhcpid >/dev/null 2>&1
			retcode=$?
			reason=STOP$VER interface=${DEVICE} /sbin/dhclient-script
		fi
		if [ -f "/var/run/dhclient$VER-${DEVICE}.pid" ]; then
			rm -f /var/run/dhclient$VER-${DEVICE}.pid
			kill $dhcpid >/dev/null 2>&1
		fi
	fi
    done
}
# we can't just delete the configured address because that address
# may have been changed in the config file since the device was
# brought up.  Flush all addresses associated with this
# instance instead.
if [ -d "/sys/class/net/${REALDEVICE}" ]; then
	if [ "${REALDEVICE}" = "${DEVICE}" ]; then
		ip addr flush dev ${REALDEVICE} scope global 2>/dev/null
	else
		ip addr flush dev ${REALDEVICE} label ${DEVICE} scope global 2>/dev/null
	fi

	if [ "${SLAVE}" = "yes" -a -n "${MASTER}" ]; then
		echo "-${DEVICE}" > /sys/class/net/${MASTER}/bonding/slaves 2>/dev/null
	fi

	if [ "${REALDEVICE}" = "${DEVICE}" ]; then
		ip link set dev ${DEVICE} down 2>/dev/null
	fi
fi
[ "$retcode" = "0" ] && retcode=$?

# wait up to 5 seconds for device to actually come down...
waited=0
while ! check_device_down ${DEVICE} && [ "$waited" -lt 50 ] ; do
    usleep 10000
    waited=$(($waited+1))
done

if [ "$retcode" = 0 ] ; then
    /etc/sysconfig/network-scripts/ifdown-post $CONFIG
    # do NOT use $? because ifdown should return whether or not
    # the interface went down.
fi

if [ -n "$PKEY" ]; then
    # PKey PKEY
    echo "$NEW_PKEY_ID" > /sys/class/net/${PHYSDEV}/delete_child
fi

exit $retcode

Filemanager

Name Type Size Permission Actions
ifcfg-eth0 File 83 B 0644
ifcfg-eth0:0 File 85 B 0644
ifcfg-lo File 254 B 0644
ifdown File 1.61 KB 0755
ifdown-Team File 1.58 KB 0755
ifdown-TeamPort File 1.52 KB 0755
ifdown-bnep File 654 B 0755
ifdown-eth File 6.38 KB 0755
ifdown-ib File 6.04 KB 0755
ifdown-ippp File 781 B 0755
ifdown-ipv6 File 4.43 KB 0755
ifdown-isdn File 781 B 0755
ifdown-post File 2.08 KB 0755
ifdown-ppp File 1.04 KB 0755
ifdown-routes File 870 B 0755
ifdown-sit File 1.42 KB 0755
ifdown-tunnel File 1.43 KB 0755
ifup File 4.89 KB 0755
ifup-Team File 1.71 KB 0755
ifup-TeamPort File 1.83 KB 0755
ifup-aliases File 12.12 KB 0755
ifup-bnep File 910 B 0755
ifup-eth File 13.44 KB 0755
ifup-ib File 10.11 KB 0755
ifup-ippp File 11.79 KB 0755
ifup-ipv6 File 11.61 KB 0755
ifup-isdn File 11.79 KB 0755
ifup-plip File 650 B 0755
ifup-plusb File 1.04 KB 0755
ifup-post File 4.88 KB 0755
ifup-ppp File 4.06 KB 0755
ifup-routes File 1.95 KB 0755
ifup-sit File 3.23 KB 0755
ifup-tunnel File 2.71 KB 0755
ifup-wireless File 1.79 KB 0755
init.ipv6-global File 5.29 KB 0755
network-functions File 20.19 KB 0644
network-functions-ipv6 File 30.26 KB 0644