python 判斷乙個IP位址是否合法

2021-07-15 12:25:24 字數 730 閱讀 5675

最近在看tornado的原始碼,遇到了 is_valid_ip(ip) 這個函式,該函式用來判斷乙個ip位址是否合法,支援ipv4和ipv6,想到自己前陣子也遇到過這個問題,看著原始碼的解決方法要比自己的好多了,就摘抄下來,以留備用

def is_valid_ip(ip):

"""returns true if the given string is a well-formed ip address.

supports ipv4 and ipv6.

"""if not ip or '\x00' in ip:

# getaddrinfo resolves empty strings to localhost, and truncates

# on zero bytes.

return false

try:

res = socket.getaddrinfo(ip, 0, socket.af_unspec,

socket.sock_stream,

0, socket.ai_numerichost)

return bool(res)

except socket.gaierror as e:

if e.args[0] == socket.eai_noname:

return false

raise

return true

這樣的帖子,應該也還算是原創吧。。。

Ping乙個IP位址是否有效

先導入兩個命名空間 using system.text.regularexpressions ping using system.net.networkinformation regex下面是ping按鈕的單擊事件 ping ip private void btnping click object ...

用乙個 int 表示 IP位址

用乙個 int 表示 ip位址。這還是08年初,面試華為時被問到的,當時也回答上來了。不過,最終 hr 也沒要我就是了 public class ip2integer else system.out.println iipv4 sb.tostring return sb.tostring conve...

乙個網絡卡怎麼新增乙個跨網段ip位址?

有時候筆記本只有乙個網絡卡,但是有一www.cppcns.com個裝置連線了內網但是ip不是內網ip,這是我們就要增加乙個跨網段ip,能夠使膝上型電腦與裝置通訊 1 單擊網路bdwdwthw和共享中心 2 單擊更改介面卡設定 www.cppcns.com 3 找到正在使用的網絡卡 4 右擊選擇屬性 ...