linux/tools/hv/hv_set_ifconfig.sh
<<
>>
Prefs
   1#!/bin/bash
   2
   3# This example script activates an interface based on the specified
   4# configuration.
   5#
   6# In the interest of keeping the KVP daemon code free of distro specific
   7# information; the kvp daemon code invokes this external script to configure
   8# the interface.
   9#
  10# The only argument to this script is the configuration file that is to
  11# be used to configure the interface.
  12#
  13# Each Distro is expected to implement this script in a distro specific
  14# fashion. For instance on Distros that ship with Network Manager enabled,
  15# this script can be based on the Network Manager APIs for configuring the
  16# interface.
  17#
  18# This example script is based on a RHEL environment.
  19#
  20# Here is the format of the ip configuration file:
  21#
  22# HWADDR=macaddr
  23# IF_NAME=interface name
  24# DHCP=yes (This is optional; if yes, DHCP is configured)
  25#
  26# IPADDR=ipaddr1
  27# IPADDR_1=ipaddr2
  28# IPADDR_x=ipaddry (where y = x + 1)
  29#
  30# NETMASK=netmask1
  31# NETMASK_x=netmasky (where y = x + 1)
  32#
  33# GATEWAY=ipaddr1
  34# GATEWAY_x=ipaddry (where y = x + 1)
  35#
  36# DNSx=ipaddrx (where first DNS address is tagged as DNS1 etc)
  37#
  38# IPV6 addresses will be tagged as IPV6ADDR, IPV6 gateway will be
  39# tagged as IPV6_DEFAULTGW and IPV6 NETMASK will be tagged as
  40# IPV6NETMASK.
  41#
  42# The host can specify multiple ipv4 and ipv6 addresses to be
  43# configured for the interface. Furthermore, the configuration
  44# needs to be persistent. A subsequent GET call on the interface
  45# is expected to return the configuration that is set via the SET
  46# call.
  47#
  48
  49
  50
  51echo "IPV6INIT=yes" >> $1
  52echo "NM_CONTROLLED=no" >> $1
  53echo "PEERDNS=yes" >> $1
  54echo "ONBOOT=yes" >> $1
  55
  56dhcp=$(grep "DHCP" $1 2>/dev/null)
  57if [ "$dhcp" != "" ];
  58then
  59echo "BOOTPROTO=dhcp" >> $1;
  60fi
  61
  62cp $1 /etc/sysconfig/network-scripts/
  63
  64
  65interface=$(echo $1 | awk -F - '{ print $2 }')
  66
  67/sbin/ifdown $interface 2>/dev/null
  68/sbin/ifup $interfac 2>/dev/null
  69
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.