#!/bin/bash
####################################################################
#Programme écrit par V. Verdon
#Network-in est un simulateur de réseau
#placé sous licence GNU GPL (consulter le fichier joint intitulé "licence.txt")
#version 20250830
####################################################################
TMP=/tmp/network-in
IP=$1
MASK=$2
ACTION=$3

if [ "$ACTION" = "start" ]
then

	#Méthode avec slirp, abandonnée car pas de ping possible
    /usr/bin/vde_switch -d -nostdin -s $TMP/vde/switch_nat -m 666
    /usr/bin/slirpvde -d -nostdin --host $IP/$MASK -s $TMP/vde/switch_nat
    
    #vde_tunctl -t networkin_nat
	#/sbin/ip a add $IP/$MASK dev networkin_nat
	#/sbin/ip link set networkin_nat up
	#ip route del default dev network_nat 2> /dev/null
	#vde_switch -d -nostdin -tap networkin_nat -s $TMP/vde/switch_nat -m 666
	#Activation parefeu pour NAT et on empèche les sessions depuis l'extérieur
	#iptables -t nat -A PREROUTING ! -d $IP/$MASK -i networkin_nat -j DNAT --to-destination $IP
	#iptables -t nat -A POSTROUTING -s $IP/$MASK -j MASQUERADE
	#iptables -t nat -A POSTROUTING -i networkin_nat -j MASQUERADE
	#iptables -A OUTPUT -s $IP/$MASK -m state --state established,related -j ACCEPT
	#iptables -A OUTPUT -s $IP/$MASK -j DROP
    
else

	#désactivation parefeu pour NAT et on empèche les sessions depuis l'extérieur
	#iptables -t nat -D PREROUTING ! -d $IP/$MASK -i networkin_nat -j DNAT --to-destination $IP
	#iptables -t nat -D POSTROUTING -s $IP/$MASK -j MASQUERADE
	#iptables -D OUTPUT -s $IP/$MASK -m state --state established,related -j ACCEPT
	#iptables -D OUTPUT -s $IP/$MASK -j DROP
	#Arrêt interface
	#/sbin/ip link set networkin_nat down
	#/sbin/ip link delete networkin_nat
    #déparamétrage et suppression du switch
    PID=$(lsof -Fp $TMP/vde/switch_nat/ctl)
    PID=${PID##p}
    /bin/kill $PID
    
fi
