IP位址段表示方法批量轉換的方法或工具有哪些?

時間 2021-05-12 06:09:27

1樓:許瀟

有個python包IPy挺好用的:

import

IPyfilename='

D:\\ip

.txt

'with

open

(filename)as

f:forlineinf

:line

=line

.strip

()ip

=IPy.IP

(line

)forxin

ip:print(x)

2樓:

自己寫乙個就好了,還可以通過兩個IP計算出包含這兩個IP的最小範圍。

lang

="en"

>

>

charset

="UTF-8"

>

>CIDR Match

title

>

>table

.writeable

style

>head

>

>

>

>

>IP1

td><

input

type

="text"id=

"a_ip1"

class

="writeable"

>td>tr>IP2

td><

input

type

="text"id=

"a_ip2"

class

="writeable"

>td>tr>CIDR

td><

input

type

="text"id=

"a_cidr"

onclick

="this.select()"

readonly

>td>tr>

="2"

><

button

onclick

="_gen_a()"

>Calc

button

>td>tr>tbody

>table

>td>

>

>CIDR

td><

input

type

="text"id=

"b_cidr"

class

="writeable"

>td>tr>IP1

td><

input

type

="text"id=

"b_ip1"

onclick

="this.select()"

readonly

>td>tr>IP2

td><

input

type

="text"id=

"b_ip2"

onclick

="this.select()"

readonly

>td>tr>

="2"

><

button

onclick

="_gen_b()"

>Calc

button

>td>tr>tbody

>table

>td>tr>table

>

>function

pad_l(s

,l,p

)returns;

}function

pad_r(s

,l,p

)returns;

}function

ip2bin(ip

)for(i

=0;i

<4;i++)bin

+=pad_l

(parseInt(a

[i],10

).toString(2

),8);}

return

bin;

}function

bin2ip

(bin

)return'';

}function

cidr_match

(ip1

,ip2

)for(i

=0;i

<32;

i++)break;}

return

bin2ip

(pad_r(t

,32))+

'/'+i;

}function

cidr_range

(cidr

)cidr

=cidr

.split

('/'

);mask

=cidr[1

]||32;

ip=ip2bin

(cidr[0

]).slice(0

,mask

);return

[bin2ip

(pad_r(ip

,32)),bin2ip

(pad_r(ip

,32,'1'

))];

}function

_gen_a

()function

_gen_b

()script

>body

>html

>

3樓:百戰百勝

這個方法很好! 有辦法實現逆向轉換嗎?

比如將:10.10.10.1-10.10.10.255 轉換成 10.10.10.1/24

4樓:Jerry Jho

不用裝任何第三方軟體(特指在人民群眾熱愛的Windows之下)的版本來啦

演算法完全照抄 @波斯基

ip位址儲存在 ip.txt裡

@ECHO OFF

FOR/F

"tokens=1,2,3,4,5 delims=./"

%%a IN

(ip.txt)

DOCALL

:SUB_PARSE

%%a %%b %%c %%d %%e

GOTO

:eof

:SUB_PARSE

SET/av=

(%1"<<"24)

"|"(%2

"<<"16)

"|"(%3

"<<"8)

"|"%

4SET/am

=(-1

)"<<"(32

-%5)

SET/ax=

(v"&"m)+

1SET/ay

=v"|"(

"~"m

)SET

/ax1=((

x">>"24)

+256

)"&"

0x000000FF

SET/ax2=

(((x

"<<"8)

">>"24)

+256

)"&"

0x000000FF

SET/ax3=

(((x

"<<"16)

">>"24)

+256

)"&"

0x000000FF

SET/ax4=

(((x

"<<"24)

">>"24)

+256

)"&"

0x000000FF

SET/ay1=

((y">>"24)

+256

)"&"

0x000000FF

SET/ay2=

(((y

"<<"8)

">>"24)

+256

)"&"

0x000000FF

SET/ay3=

(((y

"<<"16)

">>"24)

+256

)"&"

0x000000FF

SET/ay4=

(((y

"<<"24)

">>"24)

+256

)"&"

0x000000FF

ECHO

%x1%.%x2%.%x3%.%x4%-%y1%.%y2%.%y3%.%y4%

GOTO

:eof

5樓:

#include

intmain

()return0;

}湊個熱烙

關於IP位址的問題,最初生活在A地,IP位址為A。後面去了B地生活,IP位址為什麼還是A?

ip是自動分配。還是手動分配的?你這個問題的問題 有點奇怪。如果是手動分配,用了net位址轉化,確實可以一直乙個ip 我有個猜測,估計你用了同乙個路由器,然後從a地帶到b地,然後你看到的ip位址是192.168.1.x,所以你認為還是那個ip。就跟A地有個小三,B地有個張三,道理一樣,看你屬於哪個地...

ip位址是否可以取代mac位址,Fibre Channel over IP是否只使用ip位址進行通訊?

白野威 Fibre Channel over IP 是 FCoE 嘛?據我所知,好像FCoE用以太的二層但三層封裝的並不是ip報文 lg c 資料鏈路層要有位址,根據分層原則,資料鏈路層不能使用ip層的位址,只能合併資料鏈路層和ip層,鏈路層對ip層是多對一關係,這樣的話合併後的層需要包括ip層和各...

怎麼判斷ip位址正確?

AE類IP位址,不能使用 關於E類IP位址的定義 https A類位址的範圍是 0.0.0.0 127.255.255.255.由於網路號權威0和全為1保留用於特殊目的,所以A類位址有效的網路數為126個 因此,一台主機能夠使用的A類位址的有效範圍是1.0.0.1 126.255.255.254 C...