diff --git a/script.sh b/script.sh
new file mode 100755
index 0000000000000000000000000000000000000000..283f974c7826fb4dfb85e3e604a020089d7c1b7e
--- /dev/null
+++ b/script.sh
@@ -0,0 +1,39 @@
+#!/bin/bash
+
+echo " Connexion a R1 "
+ssh R1 << 'EOF'
+
+apt update && apt install -y tcpdump
+echo 1 > /proc/sys/net/ipv4/ip_forward
+
+dhclient -v eth0
+
+ip addr add 10.0.0.1/24 dev eth1
+ip link set eth1 up
+
+cat > /root/nat.nft <<END
+#!/usr/sbin/nft -f
+
+flush ruleset
+
+table ip nat {
+    chain masq {
+        type nat hook postrouting priority 100;
+        oifname "eth0" counter masquerade
+    }
+}
+END
+
+nft -f /root/nat.nft
+EOF
+echo " Connexion a H1 "
+
+ssh H1 << 'EOF'
+
+apt update && apt install -y tcpdump
+ip addr add 10.0.0.2/24 dev eth0
+ip link set eth0 up
+ip route add default via 10.0.0.1 dev eth0
+
+EOF
+
diff --git a/script2.sh b/script2.sh
new file mode 100755
index 0000000000000000000000000000000000000000..ac08892b7b69c7ab624d6f9d95573dd480a5d649
--- /dev/null
+++ b/script2.sh
@@ -0,0 +1,62 @@
+    #!/bin/bash
+    ssh -tt R1 << 'EOF'
+    set -e
+
+    # Supprimer proprement les éléments existants
+    ip netns del ns2 2>/dev/null || true
+    ip link del veth0 2>/dev/null || true
+    ip link del veth1 2>/dev/null || true
+
+    ip netns add ns2
+
+    ip link add veth0 type veth peer name veth0-ns
+    ip link set veth0-ns netns ns2
+
+    ip link add veth1 type veth peer name veth1-ns
+    ip link set veth1-ns netns ns2
+
+    ip link set veth0 up
+    ip link set veth1 up
+
+    # Côté ns2
+    # activer le loopback
+    ip netns exec ns2 ip link set lo up
+    ip netns exec ns2 ip link set veth0-ns name veth0
+    ip netns exec ns2 ip link set veth1-ns name veth1
+    ip netns exec ns2 ip link set veth0 up
+    ip netns exec ns2 ip link set veth1 up
+
+
+    ip addr add 192.168.0.1/24 dev veth0
+    ip addr add 192.168.1.1/24 dev veth1
+
+    ip netns exec ns2 ip addr add 192.168.0.2/24 dev veth0
+    ip netns exec ns2 ip addr add 192.168.1.2/24 dev veth1
+
+    # Activer le forwarding
+    ip netns exec ns2 sysctl -w net.ipv4.ip_forward=1
+
+    # NAT dans R2 sur veth0
+    ip netns exec ns2 bash -c 'cat > /root/nat-r2.nft <<EONAT
+    flush ruleset
+    table ip nat {
+        chain masq {
+            type nat hook postrouting priority 100;
+            oifname "veth0" counter masquerade
+        }
+    }
+    EONAT
+    nft -f /root/nat-r2.nft
+    '
+    # Ajout des routes
+    ip netns exec ns2 ip route add default via 192.168.0.1
+    ip netns exec ns2 ip route add 10.0.0.0/24 via 192.168.1.1
+
+    # Redirection du trafic par défaut dans R1 vers R2
+    ip route delete default || true
+    ip route add default via 192.168.1.2
+    echo '100 custom' >> /etc/iproute2/rt_tables
+    ip rule add iif veth0 table custom
+    ip route add default via 172.21.1.1 table custom
+
+    EOF
diff --git a/script3.sh b/script3.sh
new file mode 100755
index 0000000000000000000000000000000000000000..7fa0cb957e29db843af5236d66fcab7cabdb83ba
--- /dev/null
+++ b/script3.sh
@@ -0,0 +1,77 @@
+#!/bin/bash
+
+ssh -tt R1 << 'EOF'
+set -e # Arrête le script si une commande échoue
+
+ip netns del ns2 2>/dev/null || true
+ip link del br0 2>/dev/null || true
+ip link del br1 2>/dev/null || true
+ip link del veth0 2>/dev/null || true
+ip link del veth1 2>/dev/null || true
+nft flush ruleset 2>/dev/null || true
+
+ip netns add ns2
+
+ip link add veth0 type veth peer name veth0-ns
+ip link add veth1 type veth peer name veth1-ns
+
+
+ip link set veth0-ns netns ns2
+ip link set veth1-ns netns ns2
+
+
+ip link add br0 type bridge
+ip link add br1 type bridge
+
+ip link set eth0 up
+ip link set eth1 up
+ip link set br0 up
+ip link set br1 up
+
+ip link set eth0 master br0
+ip link set eth1 master br1
+
+ip link set veth0 up
+ip link set veth0 master br0
+ip link set veth1 up
+ip link set veth1 master br1
+
+
+ip netns exec ns2 ip link set veth0-ns name eth0 
+ip netns exec ns2 ip link set veth1-ns name eth1 
+ip netns exec ns2 ip link set eth0 up 
+ip netns exec ns2 ip link set eth1 up
+
+# IP sur br1
+ip addr add 10.0.0.254/24 dev br1
+# IP sur br0
+ip addr add 172.21.1.100/24 dev br0
+
+sysctl -w net.ipv4.ip_forward=1
+
+ip route del default via 172.21.1.1 dev br0 2>/dev/null || true
+# passerelle Internet
+ip route add default via 172.21.1.1 dev br0
+
+bash -c 'cat > /root/nat-r1.nft <<EONAT
+flush ruleset
+table ip nat {
+    chain postrouting {
+        type nat hook postrouting priority 100;
+        oifname "br0" counter masquerade
+    }
+}
+EONAT
+nft -f /root/nat-r1.nft
+'
+EOF
+
+ssh -tt H1 << 'EOF'
+set -e
+ip addr flush dev eth0
+ip addr add 10.0.0.1/24 dev eth0
+ip link set eth0 up
+ip route del default 2>/dev/null || true
+ip route add default via 10.0.0.254
+ping -c 3 8.8.8.8
+EOF
diff --git a/script4.sh b/script4.sh
new file mode 100755
index 0000000000000000000000000000000000000000..e3988ed20a4ff96d510f09460dc23fc7d5ab0952
--- /dev/null
+++ b/script4.sh
@@ -0,0 +1,100 @@
+#!/bin/bash
+# H1: 10.0.0.1/24
+# R3 (ns3) eth1 (côté H1): 10.0.0.254/24
+# R3 (ns3) eth0 (côté R2): 192.168.32.1/24
+# R2 (ns2) eth1 (côté R3): 192.168.32.2/24
+# R2 (ns2) eth0 (côté Internet): 172.21.1.100/24
+# Passerelle Internet: 172.21.1.1
+
+ssh -tt R1 << 'EOF'
+set -e
+
+ip netns del ns2 2>/dev/null || true
+ip netns del ns3 2>/dev/null || true
+ip link del br0 2>/dev/null || true
+ip link del br1 2>/dev/null || true
+ip link del veth_r1_ns3 2>/dev/null || true # R1 <-> ns3
+ip link del veth_ns3_ns2 2>/dev/null || true # ns3 <-> ns2 (une seule commande suffit)
+ip link del veth_r1_ns2 2>/dev/null || true # R1 <-> ns2
+
+nft flush ruleset 2>/dev/null || true
+
+ip netns add ns2
+ip netns add ns3
+
+ip link add veth_r1_ns3 type veth peer name veth_ns3_r1
+ip link add veth_ns3_ns2 type veth peer name veth_ns2_ns3
+ip link add veth_r1_ns2 type veth peer name veth_ns2_r1
+
+
+ip link set veth_ns3_r1 netns ns3
+ip link set veth_ns3_ns2 netns ns3
+
+ip link set veth_ns2_ns3 netns ns2
+ip link set veth_ns2_r1 netns ns2
+
+
+ip link add br0 type bridge
+ip link add br1 type bridge
+
+ip link set eth0 up
+ip link set eth1 up
+ip link set br0 up
+ip link set br1 up
+
+ip link set eth0 master br0
+ip link set eth1 master br1
+
+
+ip link set veth_r1_ns3 up
+ip link set veth_r1_ns3 master br1
+ip link set veth_r1_ns2 up
+ip link set veth_r1_ns2 master br0
+
+# --- Configuration de ns3 (R3) ---
+ip netns exec ns3 ip link set veth_ns3_r1 name eth1 # Interface côté H1
+ip netns exec ns3 ip link set veth_ns3_ns2 name eth0 # Interface côté R2
+ip netns exec ns3 ip link set eth1 up
+ip netns exec ns3 ip link set eth0 up
+ip netns exec ns3 ip addr add 10.0.0.254/24 dev eth1
+ip netns exec ns3 ip addr add 192.168.32.1/24 dev eth0
+ip netns exec ns3 sysctl -w net.ipv4.ip_forward=1
+ip netns exec ns3 ip route add default via 192.168.32.2 dev eth0
+
+# --- Configuration de ns2 (R2) ---
+ip netns exec ns2 ip link set veth_ns2_ns3 name eth1 # Interface côté R3
+ip netns exec ns2 ip link set veth_ns2_r1 name eth0 # Interface côté Internet
+ip netns exec ns2 ip link set eth1 up
+ip netns exec ns2 ip link set eth0 up
+ip netns exec ns2 ip route add 10.0.0.0/24 via 192.168.32.1 dev eth1
+ip netns exec ns2 ip addr add 192.168.32.2/24 dev eth1
+ip netns exec ns2 ip addr add 172.21.1.100/24 dev eth0
+ip netns exec ns2 sysctl -w net.ipv4.ip_forward=1
+ip netns exec ns2 ip route add default via 172.21.1.1 dev eth0
+
+
+ip netns exec ns2 bash -c 'cat > /root/nat.nft <<EOFNAT
+flush ruleset
+table ip nat {
+    chain postrouting {
+        type nat hook postrouting priority 100;
+        oifname "eth0" counter masquerade
+    }
+}
+EOFNAT
+nft -f /root/nat.nft
+'
+EOF
+
+ssh -tt H1 << 'EOF'
+set -e
+ip addr flush dev eth0
+ip addr add 10.0.0.1/24 dev eth0
+ip link set eth0 up
+ip route del default 2>/dev/null || true
+
+ip route add default via 10.0.0.254
+
+ping -c 4 -W 2 8.8.8.8
+EOF
+