#!/bin/bash
FICHIER_IP=[ethernet1]\nState=1\nName=Internet\nProtected=1\nMedia=0\nType=2\nGateway=\nAddress=125.246.235.245\nMask=255.0.0.0\nAddressComment=\n\n[ethernet2]\nState=2\nName=Intra\nProtected=1\nMedia=0\nType=2\nColor=1564521\n\n[ethernet3]\nState=1\nName=NET_IN\nProtected=1\nMedia=0\nType=1\nColor=FF0000\nGateway=124.128.200.100\nAddress=125.246.230.240\nMask=255.255.255.0\nAddressComment=\n\nIP_DYN=false\nLABEL_DHCP="DHCP"\nNOM_RESEAU=NET_IN\nLABEL_NOM=Name\=\n\nLABEL_ADRESSE=Address\nLABEL_MASQUE=Mask\nLABEL_PASSERELLE=Gateway\nLABEL_BLOC=ethernet\nLIGNE_NOM_RESEAU=`grep -i -n ^$LABEL_NOM$NOM_RESEAU`\nLIGNE_ENTETES=`grep -i -n $LABEL_BLOC $FICHIER_IP`;
ADRESSE_IP=1.2.3.4
MASQUE_IP=255.255.0.0
PASSERELLE_IP=9.10.11.12
IP_DYN=false
LABEL_DHCP="DHCP"
VAR_TEMP=`echo $ADRESSE_IP | grep -i '$LABEL_DHCP'`;
if [ -n "$VAR_TEMP" ]
then
    IP_DYN=true	  
    MASQUE_IP=""
    PASSERELLE_IP=""
fi
NOM_RESEAU=NET_IN
LABEL_NOM=Name\=
LABEL_ADRESSE=Address
LABEL_MASQUE=Mask
LABEL_PASSERELLE=Gateway
LABEL_BLOC=ethernet

LIGNE_NOM_RESEAU=`grep -i -n ^$LABEL_NOM$NOM_RESEAU $FICHIER_IP`;
NUM_LIGNE_RESEAU=`echo $LIGNE_NOM_RESEAU | cut -d':' -f1`
LIGNE_ENTETES=`grep -i -n $LABEL_BLOC $FICHIER_IP`;
NUMERO_LIGNE=`echo $LIGNE_ENTETES | cut -d ' ' -f1 | cut -d':' -f1`
i=2
DEBUT_BLOC="0"
FIN_FICHIER=`wc -l $FICHIER_IP | cut -d ' ' -f1`;
FIN_BLOC=$FIN_FICHIER

while [ -n "$NUMERO_LIGNE" ]&& [ "$i" -lt "$FIN_FICHIER" ]
do
	if [ -n "$LIGNE_ENTETES" ]
	then
	    NUMERO_LIGNE=`echo $LIGNE_ENTETES | cut -d ' ' -f$i | cut -d':' -f1`		
	    if [ -n "$NUMERO_LIGNE" ]
	    then	
		if [ "$NUMERO_LIGNE" -lt "$NUM_LIGNE_RESEAU" ] && [ "$NUMERO_LIGNE" -gt "$DEBUT_BLOC" ] 
		then			
			DEBUT_BLOC=$NUMERO_LIGNE			
		fi
		if [ "$NUMERO_LIGNE" -gt "$NUM_LIGNE_RESEAU" ] && [ "$NUMERO_LIGNE" -lt "$FIN_BLOC" ]
		then
			FIN_BLOC=$NUMERO_LIGNE
		fi
	    fi
	fi
        i=$(( $i + 1))
done

echo fin 1
LABEL_DHCP_T=DHCPLeaseTime
LABEL_DNS=RequesteDNS
#remplacement des lignes dans le fichier en fonction du cas
if [ "$IP_DYN" == false ]
then
echo "ce n'est pas une adresse dyn"
   sed -i "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_MASQUE.*$//" $FICHIER_IP
   sed -i "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_PASSERELLE.*$//" $FICHIER_IP	
   sed -i "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_ADRESSE=.*$/$LABEL_PASSERELLE\=$PASSERELLE_IP\n$LABEL_ADRESSE\=$ADRESSE_IP\n$LABEL_MASQUE\=$MASQUE_IP/" $FICHIER_IP
   sed -i "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_DHCP_T.*$//" $FICHIER_IP
   sed -i "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_DNS=.*$//" $FICHIER_IP
else
    echo "c'est une adresse dyn"
    sed -i -n "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_DNS.*$//" $FICHIER_IP
    sed -i -n "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_DHCP.*$//" $FICHIER_IP
    sed -i -n "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_ADRESSE=.*$/$LABEL_DHCP_T\=3600\n$LABEL_DNS\=0\n$LABEL_ADRESSE\=$LABEL_DHCP/" $FICHIER_IP
    sed -i -n "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_MASK.*$//" $FICHIER_IP
    sed -i -n "$DEBUT_BLOC,$FIN_BLOC s/^$LABEL_PASSERELLE.*$//" $FICHIER_IP

fi
echo $FICHIER_IP