这段shell脚本主要用来获得Linux的IP地址信息,包括IP、网关、子网掩码、广播地址以及DNS,参考了Eucalyptus中的eucalyptus-ipaddr.conf文件。
default_route=$(ip route show)
default_interface=$(echo $default_route | sed -e 's/^.*dev \([^ ]*\).*$/\1/' | head -n 1)
address=$(ip addr show label $default_interface scope global | awk '$1 == "inet" { print $2,$4}')
#ip address
ip=$(echo $address | awk '{print $1 }')
ip=${ip%%/*}
#broadcast
broadcast=$(echo $address | awk '{print $2 }')
#mask address
mask=$(route -n |grep 'U[ \t]' | head -n 1 | awk '{print $3}')
#gateway address
gateway=$(route -n | grep 'UG[ \t]' | awk '{print $2}')
#dns
dns=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}')
echo ip:$ip,mask:$mask,broadcast:$broadcast,gateway:$gateway,dns:$dns
来源:http://www.cnblogs.com/flyingzl/articles/2119966.html
分享到:
相关推荐
在获取Linux系统的IP地址和MAC地址时,我们可以使用SIOCGIFCONF宏来获取所有接口列表,然后使用SIOCGIFADDR宏来获取每个接口的地址信息。ioctl函数的两个相关的结构体是struct ifconf和struct ifreq。struct ifconf...
而对于Linux,则通过创建套接字并结合`ioctl()`函数来获取IP地址信息。 #### 代码分析 ##### Windows平台实现 在Windows平台上,我们首先使用`gethostname()`获取主机名,然后通过`gethostbyname()`查询主机对应的...
本文将详细讨论如何使用C语言在Linux和Windows操作系统中获取CPU序列号、硬盘序列号、网卡信息(包括网卡名称、IP地址、MAC地址以及网络连接状态)。 首先,我们来探讨CPU序列号的获取。在Windows系统中,可以使用...
例如,IP地址192.168.1.1可以转换为十进制整数3232235777,这个数字是通过将每个八位字节转换为十进制并相加得到的:(192 * 256^3) + (168 * 256^2) + (1 * 256^1) + (1 * 256^0)。 要将点分十进制IP转换为十进制...
在嵌入式Linux下修改文件进行设置开机启动时静态IP或者动态IP
本文将详细讲解如何获取设备的MAC地址和IP地址,并结合给定的代码示例进行解析。 首先,让我们了解MAC地址和IP地址的基本概念: 1. MAC地址:MAC地址是一个物理地址,由48位二进制组成,通常以12个十六进制数字...
python的socket包含了丰富的函数和方法可以获得本机的ip地址信息,socket对象的gethostbyname方法可以根据主机名获得本机ip地址,socket对象的gethostbyname_ex方法可以获得本机所有ip地址列表 第一种方法:通过...
1. **DHCP服务**:DHCP是自动分配IP地址的协议,它允许网络中的设备向DHCP服务器请求IP地址及其他网络配置信息。当设备接入网络时,会发送一个DHCP Discover广播请求,服务器响应并提供IP地址、子网掩码、默认网关和...
由于`ifconfig`输出的信息中不仅包括IP地址,还有MAC地址、广播地址等其他信息,因此直接从其输出中提取IP地址需要一定的技巧。这里提供了一种使用`awk`工具来实现这一目的的方法: ```bash ifconfig | awk '/inet/...
"基于Linux实现多网段动态分配IP地址" 本文主要介绍了在Linux系统中实现多网段动态分配IP地址的技术方案。该方案通过设置DHCP服务器和802.1Q VLAN技术,实现了多个网段的动态IP地址分配,解决了校园网中动态IP地址...
6. 防止其他人篡改 IP 地址而获得特殊权限:arp 命令可以用来设置静态 ARP,请查阅 ip 手册。 本文介绍了如何使用路由策略来控制 IP 地址,以满足不同的网络需求。通过使用 ip 命令和 ip rule 命令,我们可以创建...
编辑新创建的配置文件,指定设备名和新的IP地址信息。 ```plaintext DEVICE="eth0:0" IPADDR="211.100.10.119" NETMASK="255.255.255.0" ONBOOT=yes BOOTPROTO=static ``` 3. **重启网络服务**:同上,重启...
1,本软件由WalNut_Server(服务器端)和WalNut_Clinet(客户端)构成,WalNut_Server主要工作是获得广域网IP地址 并发送给WalNut_Clinet。 2,双击WalNut_Server,运行后会自动隐藏,并开机自启动,按"Ctrl+Alt+F9"唤醒...
在IT领域,尤其是在嵌入式开发中,有时我们需要获取设备的公网IP地址,这在远程访问、物联网设备通信等场景非常常见。本教程将聚焦于如何利用Qt框架在Linux环境下实现这一功能,特别针对友善之臂Tiny6410开发板进行...
### Linux下EtherNet/IP协议的实现 #### 摘要 随着工业自动化和网络技术的发展,EtherNet/IP作为一种重要的工业以太网协议,在工业控制领域得到了广泛应用。本文旨在探讨如何在Linux环境下实现EtherNet/IP协议,并...
DHCP协议使得网络设备能够动态地从服务器获取IP地址配置信息,包括IP地址、子网掩码、默认网关等,从而实现设备的网络连通性。当这一过程出现故障时,用户可能无法正常接入网络。 排查此类故障通常需要遵循以下步骤...
- `InetAddress.getLocalHost().getHostAddress()`:Java代码通过`getLocalHost()`获取本地主机的`InetAddress`对象,再调用`getHostAddress()`方法得到IP地址。 7. **多网络环境**: - 当计算机同时连接了多个...
打开命令提示符,输入`ipconfig /all`,系统会显示所有网络接口的详细信息,包括IP地址、子网掩码和默认网关等。 在Linux或MacOS系统中,相应的命令是`ifconfig`,也可以通过`ip addr show`获取更详细的信息。如果...
2. **网络配置**:在服务器管理界面或者本地网络设置中,可以直接查看服务器的IP地址信息。对于远程服务器,通常需要通过SSH等远程访问工具登录后查看。 3. **第三方服务**:互联网上存在许多免费的IP查询网站,...