国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

IP 段范圍區(qū)間或者掩碼網(wǎng)段地址解析成實際單個 IP

spacewander / 4226人閱讀

摘要:首先要準(zhǔn)備一個環(huán)境,安裝插件,本人用的是提取的輕量級環(huán)境,所以直接下載官網(wǎng)的源碼,解壓后找到文件夾復(fù)制到環(huán)境目錄的文件夾里即可。使用方法首先引入確定起始和結(jié)尾,無論多復(fù)雜都可以轉(zhuǎn)換運行后輸出結(jié)果

概述

兩種情況,一種給的是IP 范圍,給了一個區(qū)間例如
參考:http://www.cnblogs.com/amaoxi...

64.233.196.0-64.233.196.25#將這個范圍內(nèi)的IP 全部解析出來

另一種情況就是給了一個掩碼地址,例如

192.168.1.0/24
或者192.168.1.0 255.255.255.0
#將這個掩碼范圍內(nèi)的所有 IP 地址解析輸出出來
第一種情況范圍
#coding:utf-8

def ip2num(ip):
    ips = [int(x) for x in ip.split(".")]
    return ips[0]<< 24 | ips[1]<< 16 | ips[2] << 8 | ips[3]

def num2ip (num):
    return "%s.%s.%s.%s" % ((num >> 24) & 0xff, (num >> 16) & 0xff, (num >> 8) & 0xff, (num & 0xff))
    #return "%s.%s.%s.%s" % ((num & 0xff000000)>>24,(num & 0x00ff0000)>>16,(num & 0x00000ff00)>>8,num & 0x000000ff)


def gen_ip(ip):
    start ,end = [ip2num(x) for x in ip.split("-")]
    return [num2ip(num) for num in range(start,end+1) if num & 0xff]
print gen_ip(64.233.196.0-64.233.196.25)

輸入結(jié)果為:
["64.233.196.22", "64.233.196.23", "64.233.196.24", "64.233.196.25", "64.233.196.26", "64.233.196.27", "64.233.196.28", "64.233.196.29"]

利用0xff 把多生成的ip屏蔽掉
最后一句中 if num & 0xff 作用是過濾掉 最后一段為 0 的IP
第二種情況掩碼

利用 IPy 這個 python 自帶的模塊

from IPy import IP
ip = IP("192.168.0.0/24") 
print ip.len() 
for x in ip: 
    print(x) 
反向解析名稱、IP類型、IP轉(zhuǎn)換等

>>> ip = IP("192.168.1.20")
>>> ip.reverseNames()               #反向解析地址格式
["20.1.168.192.in-addr.arpa."]
>>> ip.iptype()                     #私網(wǎng)類型
"PRIVATE"
>>> IP("8.8.8.8").iptype()          #公網(wǎng)類型
"PUBLIC"
>>> IP("8.8.8.8").int()             #轉(zhuǎn)換為整型格式
134744072
>>> IP("8.8.8.8").strHex()          #轉(zhuǎn)換為十六進制格式
"0x8080808"
>>> IP("8.8.8.8").strBin()          #轉(zhuǎn)換成二進制格式
"00001000000010000000100000001000"
>>> print IP("0x8080808")           #十六進制轉(zhuǎn)換為IP格式
8.8.8.8
>>> print IP(134744072)             #整型格式轉(zhuǎn)換為IP格式
8.8.8.8
IP方法也支持網(wǎng)絡(luò)地址的轉(zhuǎn)換,例如根據(jù)IP和掩碼產(chǎn)生網(wǎng)段格式

>>> print (IP("192.168.1.0").make_net("255.255.255.0"))
192.168.1.0/24
>>> print (IP("192.168.1.0/255.255.255.0",make_net=True))
192.168.1.0/24
>>> print (IP("192.168.1.0-192.168.1.255",make_net=True))
192.168.1.0/24
通過strNormal方法指定不同wantprefixlen參數(shù)值以定制不同輸出類型的網(wǎng)段,輸出類型為字符串

>>> IP("192.168.1.0/24").strNormal(0)   #無返回
"192.168.1.0"
>>> IP("192.168.1.0/24").strNormal(1)   #prefix格式
"192.168.1.0/24"
>>> IP("192.168.1.0/24").strNormal(2)   #decimalnetmask格式
"192.168.1.0/255.255.255.0"
>>> IP("192.168.1.0/24").strNormal(3)   #lastIP格式
"192.168.1.0-192.168.1.255"
ps:

使用python將IP段范圍轉(zhuǎn)換成CIDR

因為最近在整理用于某些工具使用的IP段,像一些IP范圍如:64.233.56.37-64.233.56.215,某些軟件不支持,只支持像:64.233.56.37/26這樣的CIDR格式,于是就在網(wǎng)上找了一下轉(zhuǎn)換的方法,還真找到了不過是外語,這里簡單記錄下需要的工具。

首先要準(zhǔn)備一個python環(huán)境,安裝netaddr插件,本人用的是提取的輕量級python環(huán)境,所以直接下載官網(wǎng)的源碼,解壓后找到netaddr文件夾復(fù)制到python環(huán)境目錄的lib文件夾里即可。

使用方法:

# 首先引入netaddr
import netaddr

# 確定起始和結(jié)尾IP,無論多復(fù)雜都可以轉(zhuǎn)換
startip = "64.233.56.37"
endip = "64.233.56.215"
cidrs = netaddr.iprange_to_cidrs(startip, endip)
for k, v in enumerate(cidrs):
    iplist = v
    print iplist
運行后輸出結(jié)果:

64.233.56.37/32
64.233.56.38/31
64.233.56.40/29
64.233.56.48/28
64.233.56.64/26
64.233.56.128/26
64.233.56.192/28
64.233.56.208/29

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/40651.html

相關(guān)文章

  • IP 范圍區(qū)間或者掩碼網(wǎng)地址解析實際單個 IP

    摘要:首先要準(zhǔn)備一個環(huán)境,安裝插件,本人用的是提取的輕量級環(huán)境,所以直接下載官網(wǎng)的源碼,解壓后找到文件夾復(fù)制到環(huán)境目錄的文件夾里即可。使用方法首先引入確定起始和結(jié)尾,無論多復(fù)雜都可以轉(zhuǎn)換運行后輸出結(jié)果 概述 兩種情況,一種給的是IP 范圍,給了一個區(qū)間例如參考:http://www.cnblogs.com/amaoxi... 64.233.196.0-64.233.196.25#將這個范圍內(nèi)...

    tomener 評論0 收藏0
  • 9000字加圖文 | 帶你了解IP地址劃分、子網(wǎng)掩碼的作用、實際IP地址規(guī)劃是怎么樣的

    摘要:字加圖文帶你了解地址劃分子網(wǎng)掩碼的作用實際中地址規(guī)劃是怎么樣的子網(wǎng)在用同樣的方法,,第三個子網(wǎng)網(wǎng)段用了,還三個可以繼續(xù)使用,使用最小的,,計算出財務(wù)部門。 作者:一天 首發(fā)公眾號:網(wǎng)絡(luò)之路博客(ID:NetworkBlog)?(1)子網(wǎng)掩碼之所以出現(xiàn)大量地址浪費,在于早期的地址分類采用的是固定的網(wǎng)絡(luò)位與主機位的長度,不能靈...

    番茄西紅柿 評論0 收藏2637

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<