【Python】用python把IPv4地址变成LITNET-N

作者: IT派森 | 来源:发表于2019-08-02 22:51 被阅读1次

用python把IPv4地址变成LITNET-NAT64网段,方便写入hosts,只对IPv6的童鞋"上外网"有用,你们懂的。不过不足两位的数值要补0,例如“6”要补为“06”,“c”要补为“0c”

  1. [代码]把IPv4地址变成LITNET-NAT64网段提供转换代理的IPv6格式
#!/usr/bin/env python
 
while 1:
   print "A.B.C.D"
   num1 = int(raw_input("Please input A:"))
 
   n1 =num1
   result1 = ''
   li1=[]
   while n1 >=16:
       if (n1%16)==10:
           li1.append("a")
       elif (n1%16)==11:
           li1.append("b")
       elif (n1%16)==12:
           li1.append("c")
       elif (n1%16)==13:
           li1.append("d")
       elif (n1%16)==14:
           li1.append("e")
       elif (n1%16)==15:
           li1.append("f")
       else:
           li1.append(n1%16)
       n1=n1/16
   if (n1)==10:
       li1.append("a")
   elif (n1)==11:
       li1.append("b")
   elif (n1)==12:
       li1.append("c")
   elif (n1)==13:
       li1.append("d")
   elif (n1)==14:
       li1.append("e")
   elif (n1)==15:
       li1.append("f")
   else:
       li1.append(n1)
   for i in range(0,len(li1)):
       result1+=str(li1[len(li1)-i-1])
 
   num2 = int(raw_input("Please input B:"))
 
   n2 =num2
   result2 = ''
   li2=[]
   while n2 >=16:
       if (n2%16)==10:
           li2.append("a")
       elif (n2%16)==11:
           li2.append("b")
       elif (n2%16)==12:
           li2.append("c")
       elif (n2%16)==13:
           li2.append("d")
       elif (n2%16)==14:
           li2.append("e")
       elif (n2%16)==15:
           li2.append("f")
       else:
           li2.append(n2%16)
       n2=n2/16
   if (n2)==10:
       li2.append("a")
   elif (n2)==11:
       li2.append("b")
   elif (n2)==12:
       li2.append("c")
   elif (n2)==13:
       li2.append("d")
   elif (n2)==14:
       li2.append("e")
   elif (n2)==15:
       li2.append("f")
   else:
       li2.append(n2)
   for j in range(0,len(li2)):
       result2+=str(li2[len(li2)-j-1])
   num3 = int(raw_input("Please input C:"))
 Python资源分享qun 784758214 ,内有安装包,PDF,学习视频,这里是Python学习者的聚集地,零基础,进阶,都欢迎
   n3 =num3
   result3 = ''
   li3=[]
   while n3 >=16:
       if (n3%16)==10:
           li3.append("a")
       elif (n3%16)==11:
           li3.append("b")
       elif (n3%16)==12:
           li3.append("c")
       elif (n3%16)==13:
           li3.append("d")
       elif (n3%16)==14:
           li3.append("e")
       elif (n3%16)==15:
           li3.append("f")
       else:
           li3.append(n3%16)
       n3=n3/16
   if (n3)==10:
       li3.append("a")
   elif (n3)==11:
       li3.append("b")
   elif (n3)==12:
       li3.append("c")
   elif (n3)==13:
       li3.append("d")
   elif (n3)==14:
       li3.append("e")
   elif (n3)==15:
       li3.append("f")
   else:
       li3.append(n3)
   for k in range(0,len(li3)):
       result3+=str(li3[len(li3)-k-1])
   num4 = int(raw_input("Please input D:"))
 
   n4 =num4
   result4 = ''
   li4=[]
   while n4 >=16:
       if (n4%16)==10:
           li4.append("a")
       elif (n4%16)==11:
           li4.append("b")
       elif (n4%16)==12:
           li4.append("c")
       elif (n4%16)==13:
           li4.append("d")
       elif (n4%16)==14:
           li4.append("e")
       elif (n4%16)==15:
           li4.append("f")
       else:
           li4.append(n4%16)
       n4=n4/16
   if (n4)==10:
       li4.append("a")
   elif (n4)==11:
       li4.append("b")
   elif (n4)==12:
       li4.append("c")
   elif (n4)==13:
       li4.append("d")
   elif (n4)==14:
       li4.append("e")
   elif (n4)==15:
       li4.append("f")
   else:
       li4.append(n4)
   for h in range(0,len(li4)):
       result4+=str(li4[len(li4)-h-1])
   print "2001:778:0:ffff:64:0:"+result1+result2+":"+result3+result4
Python资源分享qun 784758214 ,内有安装包,PDF,学习视频,这里是Python学习者的聚集地,零基础,进阶,都欢迎

相关文章

网友评论

    本文标题:【Python】用python把IPv4地址变成LITNET-N

    本文链接:https://www.haomeiwen.com/subject/mwsaqctx.html