Informations :
Dates
- Publish : : Friday 14 december 2018
- Modification : Friday 14 december 2018
- 269 views
Share :
Retourne un tableau PHP des IPv4 d'un réseau grâce à la commande nmap
puis ping6
une adresse IPv6 par IPv4 trouvée. Stoke les valeurs dans un fichier et le modifie si les valeurs ont étés modifiés.
Faire cela sur un réseau local (sur des adresses privées)
10.0-255.0-255.0-255
192.168.0-255.0-255
172.16-32.0-255.0-255
On édite le fichier vim ./nmap-ping6.sh
Script avec 142 lignes
001#!/bin/bash 002####################################################################### 003# 004# Script BASH 005# 006# Ce script retourne les adresses IPv4 d'un réseau grace à nmap 007# Il ping6 des adresses IPv6 "configurer" aux IPv4 008# Et stoke le tout dans une variable PHP 009# 010# Author : O.Romain Jaillet-Ramey (orj@lab3w.fr) 011# 012# Date-create : 2018/12/06 013# Date-modify : 2018/12/14 014# 015# TODO : retour nmapv4 sur MAC_ADDR et conparaison IPv6 016# 017# 018####################################################################### 019 020#####-------------------------- CHECK ----------------------------##### 021ID=`id -u` 022 023if [ "x$ID" != "x0" ]; then 024 echo "Run as root!" 025 exit 1 026fi 027 028EXPECTED_ARGS=1 029E_BADARGS=65 030 031if [ $# -ne $EXPECTED_ARGS ] 032then 033 echo "Usage: `basename $0` 10.0.0.0/24" 034 exit $E_BADARGS 035fi 036 037#####-------------------------- /CHECK ----------------------------##### 038 039#####-------------------------- DECLARATION ----------------------------##### 040MYDIR=`dirname $0` 041 042# Date Actuelle 043DATE=`date +%Y%m%d` 044DATEFR="2015/09/25 12:39:28" 045DATEFR=`date +"%Y/%m/%d %H:%M:%S"` 046 047# conf 048DIRECTORY="/var/pro/web_sites/zw3b.net/swan/tmp/" 049DIRECTORY_TMP="/tmp/" 050 051IPV6_PREFIX='2001:bc8:25bb:ff00:'; 052IPV6_ORG='1ab3:'; 053 054# Envoie 055NETWORK_ADDR=$1; 056 057#------------------------------------------- 058 059if [ "${NETWORK_ADDR}" != "" ]; 060then 061 062swan_ips="`nmap $NETWORK_ADDR -n -sP | grep report | awk '{print $5}'`"; 063 064 SWAN_PPP="172.16.5.199"; 065 SWAN_IPV4="10.59.199.0"; 066 067 if [ "${NETWORK_ADDR}" = "10.59.199.0/24" ]; then 068 SWAN_PPP="172.16.5.199"; 069 SWAN_IPV4="10.59.199.0"; 070 SWAN_SITE="3b:"; 071 SWAN_IPV6=${IPV6_PREFIX}${IPV6_ORG}${SWAN_SITE}"1ac0:"; 072 fi 073 if [ "${NETWORK_ADDR}" = "10.106.42.0/24" ]; then 074 SWAN_PPP="172.16.5.253"; 075 SWAN_IPV4="10.106.42.0"; 076 SWAN_SITE="3a:"; 077 SWAN_IPV6=${IPV6_PREFIX}${IPV6_ORG}${SWAN_SITE}"c10d:"; 078 fi 079 if [ "${NETWORK_ADDR}" = "10.6.42.0/24" ]; then 080 SWAN_PPP="172.16.5.253"; 081 SWAN_IPV4="10.6.42.0"; 082 SWAN_SITE="3a:"; 083 SWAN_IPV6=${IPV6_PREFIX}${IPV6_ORG}${SWAN_SITE}"80fa:"; 084 fi 085 086 if [ "${NETWORK_ADDR}" = "10.106.0.0/24" ]; then 087 SWAN_PPP="172.16.5.143"; 088 SWAN_IPV4="10.106.0.0"; 089 SWAN_SITE="3e:"; 090 SWAN_IPV6=${IPV6_PREFIX}${IPV6_ORG}${SWAN_SITE}"1ac1:"; 091 fi 092 093 if [ "${NETWORK_ADDR}" = "10.6.0.0/24" ]; then 094 SWAN_PPP="172.16.5.143"; 095 SWAN_IPV4="10.6.0.0"; 096 SWAN_SITE="3e:"; 097 SWAN_IPV6=${IPV6_PREFIX}${IPV6_ORG}${SWAN_SITE}"1:"; 098 fi 099 100 { 101 echo '<?php'; 102 for ip in $swan_ips; 103 do 104 105 echo "$hosts['swan']['${SWAN_PPP}']['host']['$ip']['ipv4'] = '$ip';"; 106 107 num_ip=`echo $ip | cut -d'.' -f4` 108 ipv6="${SWAN_IPV6}${num_ip}" 109 110 #echo $ipv6 111 if ping6 -c1 $ipv6 1>/dev/null 2>/dev/null; then 112 echo "$hosts['swan']['${SWAN_PPP}']['host']['$ip']['ipv6'] = '$ipv6';"; 113 fi 114 115 done 116 echo '?>'; 117# } > ${DIRECTORY}/nmap.${SWAN_IPV4}.php 118 } > ${DIRECTORY_TMP}/nmap.${SWAN_IPV4}.php 119 120 MD5_SUM_NOW=`md5sum "${DIRECTORY_TMP}/nmap.${SWAN_IPV4}.php" | cut -d" " -f1` 121 122 MD5_FILE=${DIRECTORY}"/nmap."${SWAN_IPV4} 123 124 MD5_SUM_OLD=0000000000000; 125 if [ -e "${MD5_FILE}.sum" ]; then 126 MD5_SUM_OLD=`cat ${MD5_FILE}.sum` 127 fi 128 129# echo "MD5_SUM_OLD : " $MD5_SUM_OLD 130# echo "MD5_SUM_NOW : " $MD5_SUM_NOW 131# exit; 132 133 if [ "$MD5_SUM_OLD" != "$MD5_SUM_NOW" ]; then 134 135 cp ${DIRECTORY_TMP}/nmap.${SWAN_IPV4}.php ${DIRECTORY}/nmap.${SWAN_IPV4}.php 136 137 md5sum "${MD5_FILE}.php" | cut -d" " -f1 > ${DIRECTORY}"/nmap.${SWAN_IPV4}.sum" 138 fi 139 140fi 141 142
On envoie la commande de cette manière sh ./nmap-ping6.sh 10.0.0.0/24
LAB3W html © ZW3B html :-: SWAN LAC html
Qui me retourne quelques choses comme çà ;)
LAB3W html © ZW3B html :-: Secure Wide Area Networks xLayer 2 Tunneling Protocol Access Concentrator IP(v4/v6) html
Cordialement,
Romain