Linux下獲取網路介面ip位址

2022-09-16 15:36:08 字數 915 閱讀 4601

linux 下 可以使用ioctl()函式以及結構體 struct ifreq和結構體struct ifconf來獲取網路介面的各種資訊。

標頭檔案:

1 #include 2 #include if.h>

3 #include 4 #include

**:

1

static

int langetbr1ipaddr(const

char *ifname, char *ipaddr, uint32 addrlen)217

close(sock);

1819 sin = (struct sockaddr_in *)&(ifr.ifr_addr);

20if (null == inet_ntoa(sin->sin_addr))

2124 strncpy(ipaddr, inet_ntoa(sin->sin_addr), addrlen);

2526

return

ret;

27 }

獲取成功存入資料庫並給前台:

寫這段**的時候遇到個小問題,本來想列印未經轉換的ip位址 sin_addr,一直不成功,實際上這時候的位址是整型

typedefuint32_t in_addr_t;

structin_addr

;

linux 下C實現獲取網絡卡IP和MAC位址

本文使用getifaddrs 函式獲取網絡卡的ip和mac位址。getifaddrs函式有個特點,就是獲取位址時以鍊錶方式返回,且每個鍊錶節點要麼是ip,要麼是mac,所以如果要將網絡卡的ip和mac位址同時返回的話,需要對對返回鍊錶進行查詢和重新組合。本文實現目的,在於以網絡卡名方式返回ip和ma...

Linux下ifconfig不顯示ip位址問題總結

問題一 ifconfig之後只顯示lo,沒有看到eth0 eth0設定不正確,導致無法正常啟動,修改eth0配置檔案就好 ubuntu 12.04的網路設定檔案是 etc network inte ces,開啟檔案,會看到 auto lo iface lo inet loopback 這邊的設定是本...

Python網路程式設計 獲取遠端裝置的IP位址

有時需要把裝置的主機名轉換成對應的ip位址,下面是乙個簡單的操作。1 import socket23 4def get remote machine info 定義get remote machine info 函式 5 remote host www.python.org 定義遠端裝置名稱 6tr...