通过抓包获取服务器的IP地址

问题描述:
一台服务器安装了winserver2003系统,经过漫长的加电启动,能进入到win2003的登录界面,提示ctrl+alt+del登录界面,但是发现键盘失灵了,无法键入ctrl+alt+del,更换键盘重启服务器之后也不管用!想通过网口远程登录,但是不记得网口的IP地址了!

问题分析:
键盘失灵应该是主板上的USB模块坏了,这个短时间无法修复
远程登录不知道IP地址,这个有就点可惜了,想想有没有解决办法呢?

解决问题:
使用网线一头接Gb网口,另一头接笔记本网卡,如果使用IP扫描软件扫描IP的话,扫描的是本网段,所以这个方法不可取;使用wireshark是否可以呢?一头接服务器的网卡,另一个口接笔记本上的网卡,在笔记本上运行wireshark,就单独抓有线网卡上收到的数据包,我觉得这样应该是可以的,因为不管是服务器还是笔记本电脑,开机的时候或者每隔一段时间都会向外发ARP广播的,我们通过广播报文就可以看到其源IP地址。
连接好线路,在笔记本上启动wireshark抓包之后重启服务器,我们在笔记本上抓包,下图是我们看到的内容,真的看到了服务器网卡的IP地址:192.168.70.9,还看到了它的网关地址:192.168.70.1,如下图所示:

每次服务器开机的时候,都会向外发送两种arp广播,第一是探测自己的IP地址有没有被人使用,第二是问一下网关的MAC地址,通过这两种包的任何一种都可以看到服务器的源IP。

问题反思:
有的服务器本身带有管理接口,管理接口上有固定的IP地址一般不会变动,通过http协议即可以登录进去,也可以看到网卡的IP地址。
IBM的管理地址通常是192.168.70.125,用户名是USERID,密码是PASSW0RD(全部大写,是零而不是欧)

原文地址:https://blog.51cto.com/13778749/2399953

时间: 2024-10-25 20:43:56

通过抓包获取服务器的IP地址的相关文章

Java根据HttpServletRequest请求获取服务器的IP地址

以下总结了两种根据HttpServletRequest请求获取发出请求浏览器客户端所在服务器的IP地址方法: 代码: import javax.servlet.http.HttpServletRequest; /** * 根据HttpServletRequest请求获取发出请求浏览器客户端所在服务器的IP地址 * @author [] * */ public class IPUtil { /* * 第一种方法 */ public String getIpAddr(HttpServletReque

asp.net获取URL和IP地址

(转自:http://www.cnblogs.com/JuneZhang/archive/2010/11/26/1888863.html) HttpContext.Current.Request.Url.ToString() 并不可靠.如果当前URL为 http://localhost/search.aspx?user=http://csharp.xdowns.com&tag=%BC%BC%CA%F5 通过HttpContext.Current.Request.Url.ToString()获取到

如何获取陌生服务器的IP地址

如何获取陌生服务器的IP地址 一.背景 在机房里有一台生产系统的服务器,该服务器有带外管理卡,但是管理卡的IP地址被其他同事修改过,现在已经不能找到历史记录,如果要实现这台服务器的带外管理功能,就必须知道服务器的带外管理卡IP地址,怎么解决呢? 二.解决办法 1.可以对这台服务器进行重启操作,然后登陆设备后台进行查找或修改,这种方式目前不可行. 2.可以通过抓包的方式实现,用一台笔记本随便配置一个IP地址如172.16.1.1,然后通过网线与这台服务器的带完管理卡直连,启用抓包软件进行转包. (

python之获取微信服务器的ip地址

# -*- coding: cp936 -*- #PYTHON 27 #xiaodeng #获取微信服务器的ip地址 import urllib url='https://api.weixin.qq.com/cgi-bin/getcallbackip' data={'access_token':'VchuOKNr8X9tZVDrY_yG9qiJus_1nO1a7uT_iwWVwgGFdzPhPyaqreTE_qMKPas4SwRNif5k0A1zVw6Y9eTPI4CAYiUwpJvHdBt4f

Java里面获取当前服务器的IP地址

java中获取当前服务器地址主要使用到InetAddress这个类 public static void main(String[] args) { try { //用 getLocalHost() 方法创建的InetAddress的对象 InetAddress address = InetAddress.getLocalHost(); System.out.println(address.getHostName());//主机名 System.out.println(address.getCa

服务器端获取客户端的IP地址(当客户端调用由Axis开发的WebService)

一.前言 由于项目中一个小的模块需要获取客户端的IP地址以保证安全调用webservice接口,项目中客户端使用C#编写,服务器端使用Java编写,服务器端与客户端采用Axis开发的WebService进行通信.服务器端维护IP白名单列表,只有IP地址在白名单中的客户端才可以成功调用到接口,获得服务. 二.代码清单 若要成功获取客户端IP地址,需要如下Jar包的支持. servlet-api.jar axis.jar axis2-kernel-1.6.2.jar 获取IP地址的具体代码如下: i

Linux编程获取本机IP地址

使用函数getifaddrs来枚举网卡IP,其中使用到的结构体如下所示: struct ifaddrs { struct ifaddrs *ifa_next; /* Next item in list */ char *ifa_name; /* Name of interface */ unsigned int ifa_flags; /* Flags from SIOCGIFFLAGS */ struct sockaddr *ifa_addr; /* Address of interface *

CDN下nginx获取用户真实IP地址

随着nginx的迅速崛起,越来越多公司将apache更换成nginx. 同时也越来越多人使用nginx作为负载均衡, 并且代理前面可能还加上了CDN加速,但是随之也遇到一个问题:nginx如何获取用户的真实IP地址,如果后端是apache,请跳转到,如果是后端真实服务器是nginx,那么继续往下看. 实例环境: 用户IP 120.22.11.11 CDN前端 61.22.22.22 CDN中转 121.207.33.33 公司NGINX前端代理 192.168.50.121(外网121.207.

PHP获取用户真实IP地址

PHP获取客户端真实IP地址方法 在PHP获取客户端IP中常使用 $_SERVER["REMOTE_ADDR"] . (1) 但如果客户端是使用代理服务器来访问,那取到的是代理服务器的 IP 地址,而不是真正的客户端 IP 地址.要想透过代理服务器取得客户端的真实 IP 地址,就要使用 $_SERVER["HTTP_X_FORWARDED_FOR"] 来读取. (2) 但只有客户端使用“透明代理”的情况下,$_SERVER["HTTP_X_FORWARDE