python获取局域网IP地址

UDP数据报格式:

设计思路:

设计一个UDP数据报,并发送到公共的DNS服务器当中,UDP数据报是尽最大努力不可靠交付,我们只需要获取到UDP头部信息即可:

import socket

def main():
    get_wlan_ip()
    
def get_wlan_ip():
    try:
        # socket.SOCK_DGRAM代表的是socket使用UDP协议进行通讯
        # 除此之外socket.SOCK_STREAM使用的是TCP协议进行通讯
        skt = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
        skt.connect(("8.8.8.8", 999)) # 谷歌公共DNS 地址,端口任意填
        wlan_ip = skt.getsockname()[0]
    finally:
        skt.close()
        print(wlan_ip)


if __name__ == "__main__":
    main()

UDP数据报格式:

image

posted @ 2022-01-11 00:56  LilyFlower  阅读(709)  评论(0编辑  收藏  举报