日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ip地址扫描

發布時間:2025/3/20 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ip地址扫描 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

自己寫的一個ip地址掃描的shell腳本,功能是輸入ip地址和掩碼,通過ping檢測整個網段的ip地址,輸出ping的結果。

主要的幾個函數如下:

1、ip地址轉化為數值,方便計算

ip2num() {ip=$1a=`echo $ip |awk -F '.' '{print $1}'`b=`echo $ip |awk -F '.' '{print $2}'`c=`echo $ip |awk -F '.' '{print $3}'`d=`echo $ip |awk -F '.' '{print $4}'`num=$(($a*256*256*256+$b*256*256+$c*256+$d))echo $numecho "obase=10;(($num))"bc }

2、數值轉化為ip

num2ip() {num=$1a=$(($num/(256*256*256)))#echo $ab=$(($num/(256*256)-$a*256))#echo $bc=$(($num/256-$a*256*256-$b*256))#echo $cd=$(($num-$a*256*256*256-$b*256*256-$c*256))#echo $decho $a.$b.$c.$d >>ip.datiptmp=$a.$b.$c.$d }

3、cdr掩碼轉化為ip格式

cdr2mask () {# Number of args to shift, 255..255, first non-255 byte, zeroesset -- $(( 5 - ($1 / 8) )) 255 255 255 255 $(( (255 << (8 - ($1 % 8))) & 255 )) 0 0 0[ $1 -gt 1 ] && shift $1 || shift#echo ${1-0}.${2-0}.${3-0}.${4-0}mask=${1-0}.${2-0}.${3-0}.${4-0} }

4、ip格式掩碼轉化為cdr

mask2cdr () {# Assumes there's no "255." after a non-255 byte in the masklocal x=${1##*255.}set -- 0^^^128^192^224^240^248^252^254^ $(( (${#1} - ${#x})*2 )) ${x%%.*}x=${1%%$3*}echo $(( $2 + (${#x}/4) )) }

5、由ip地址和掩碼計算網絡地址

net () {ip=$1a=`echo $ip |awk -F '.' '{print $1}'`b=`echo $ip |awk -F '.' '{print $2}'`c=`echo $ip |awk -F '.' '{print $3}'`d=`echo $ip |awk -F '.' '{print $4}'`mask=$2m=`echo $mask |awk -F '.' '{print $1}'`n=`echo $mask |awk -F '.' '{print $2}'`o=`echo $mask |awk -F '.' '{print $3}'`p=`echo $mask |awk -F '.' '{print $4}'`n1=$(($a&$m))n2=$(($b&$n))n3=$(($c&$o))n4=$(($d&$p))net=$((n1*256*256*256+n2*256*256+n3*256+n4)) # echo $net }

3、4兩個函數直接用的網上大神的,寫的很簡潔,對比自己寫的,感覺自己low爆了,哈哈

?

轉載于:https://www.cnblogs.com/wangle0529/p/8981866.html

總結

以上是生活随笔為你收集整理的ip地址扫描的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。