首先上c的**
#include//#include#include#include#include#include#include/*
* struct hostent
* ;
*/int main(int arc, char** argv)
} printf("ip type: %s\n",iptype);
printf("length: %d\n",hostinfo->h_length);
printf("addr list:");
strptr=hostinfo->h_addr_list;
for(;*strptr !=null;strptr++)
printf("\n");
return 0;}
ok,你可以自己跑一下看自己的主機名和ip位址啦
相應的python**就顯得簡單的多了
#!/usr/bin/env python
#-*- coding: utf-8 -*-
import socket
def print_machine_info():
#get host_name
host_name = socket.gethostname()
#get ip_address
ip_address = socket.gethostbyname(host_name)
#print the machine_info
print "host name: %s" %host_name
print "ip address: %s" %ip_address
if __name__=='__main__':
print_machine_info()
~
兩個函式就搞定了,當然底層的**都封裝了的原因的吧,就這樣啦~ 獲取主機名與主機IP位址
說明 structhostent define h addr h addr list 0 h name 位址的正式名稱。h aliases 空位元組 位址的預備名稱的 指標。h addrtype 位址型別 通常是 af inet。h length 位址的位元長度。h addr list 零位元組 主...
Linux 網路程式設計之通過IP或者主機名獲取資訊
struct hostent define h addr h addr list 0 主機的第乙個ip位址 struct hostent gethostbyname const char name 通過主機名 name 獲取 主機ip等資訊。成功返回給定主機名包含的主機名字和位址資訊的 hosten...
centos上修改主機名和主機名與ip做對映
最近在弄大資料這塊的知識,用的最多的就是主機名和主機名與ip之間做對映,先說我們的修改主機名 1.檢視當前主機的主機名 2.如果是centos7版本,hostnamectl檢視詳細的資訊 3.臨時修改主機名,可以使用hostname 新主機名即可,但有個缺點,就是重啟網絡卡服務會自動還原,所以我們還...