Articles of ip

在Linux中检测IP地址的变化

有没有人知道在Linux中检测IP地址变化的方法。 说我有dhcpcd运行,并分配一个新的IP地址,有没有办法,我可以得到一个通知,当它改变? 我不能使用D-Bus,因为这是一个没有它的embedded式ucLinux版本。 inotify / proc / net /中的某些东西

在configurationAzure虚拟机(资源pipe理器)时如何预留IP

我正在通过Ubuntu命令行调配一个新的Azure虚拟机(资源pipe理器)。 我遵循这里列出的步骤来执行此操作: https : //azure.microsoft.com/en-us/documentation/articles/virtual-machines-linux-tutorial/ 我的问题是:当configuration一个新的虚拟机时,我该如何在命令行上确保它具有静态IP (保留IP)? 使用Azure PowerShell通过New-AzureReservedIP -ReservedIPName $reservedIP -Location $location可以完成同样的事情

JAVA:如何创buildhttp url连接select使用的ip地址

我有我的多个网卡上configuration公共IP地址池。 在我的LINUX机器上运行的JAVA项目中,我需要从池中select一个特定的IP地址,并使用该IP创build一个HttpURLConnecion。 另外,我会在游泳池上循环,每次使用不同的ip。 在目前阶段,我无法使用java.net库find解决scheme。 我宁愿看Apache的HttpClient。 在下面的链接http://hc.apache.org/httpcomponents-client-ga/tutorial/html/connmgmt.html ,据说这样的库可以支持我正在寻找的function。 关于这个的讨论可以在使用Apache HttpClient定义源IP地址中find。 实际上,贴出的post似乎并不确定,因为用户的体验与所描述的库的使用形成了鲜明的对比。 因此,我不认为社区真的成功解决了这个问题。 事实上,在这个问题上可以find几个重复的问题/答案,但似乎没有一个详细分析这个问题。 而且,这个问题并没有面对java.net库的使用(就像我的项目一样)。 目前,我有一个可能的select是调用一些LINUX系统命令(来自java)来切换用于当前连接的NIC。 不过,我还没弄明白。 因此,如果有解决这个问题的积极经验的用户能够给我一个解决scheme/想法/方法,我将不胜感激。 提前致谢, 马塞罗 更新: 我目前已经实现了这个testing代码。 它给了我正确的状态代码(200)。 但是,它需要使用多个IP地址进行testing。 public class test { public static void main(String[] args) { final String authUser = "admin"; final String authPassword = "password"; Authenticator.setDefault( new Authenticator() { public PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication( authUser, authPassword.toCharArray()); […]

Linux C:如何知道上网的默认界面?

我想找出正在使用的默认networking,我目前的方法是找出所有的IP地址,并将其与默认的网关IP地址进行比较,但这听起来很愚蠢,这是做到这一点的正确方法? UPDATE 我想使用一个C程序,而不是命令…

套接字 – 在客户端使用INADDR_ANY

我最近碰到这个博客文章 ,描述了一个使用libev的TCP服务器客户端。 服务器使用INADDR_ANY绑定到我熟悉的界面。 但是,我很惊讶地看到客户端代码中的INADDR_ANY 。 客户代码上的相关代码如下: // Create client socket if( (sd = socket(PF_INET, SOCK_STREAM, 0)) < 0 ) { perror("socket error"); return -1; } bzero(&addr, sizeof(addr)); addr.sin_family = AF_INET; addr.sin_port = htons(PORT_NO); addr.sin_addr.s_addr = htonl(INADDR_ANY); // Connect to server socket if(connect(sd, (struct sockaddr *)&addr, sizeof addr) < 0) { perror("Connect error"); return -1; } […]

设置静态IP,如果没有从DHCP获取(脚本)

我使用Linux上的embedded式设备工作。 我想首先使用DHCP客户端,但是如果从DHCP服务器没有应答,我想设置静态默认IP。 我想这不应该是复杂的,但我没有find严格的答案。 我正在考虑2个解决scheme(不幸的是我可以在几天内testing): 我用ifconfig设置静态IP,然后我打电话给udhcpc。 如果udhcpc不会获得新的IP,旧的将停留。 我也可以先调用udhcpc,等一会儿,检查IP是否获得。 但是这对我不好。 我不想在启动时添加任何等待例程。 BR Bartek 我使用udhcpc – 如下所示: udhcpc -n -f -i eth0 if ifconfig | grep -A1 eth0 | grep inet then

为什么connect()会给EADDRNOTAVAIL?

我在我的应用程序中出现了一个似乎不可重现的失败。 我有一个TCP套接字连接失败,应用程序试图重新连接它。 在connect()尝试重新连接的第二个调用中,我得到了errno == EADDRNOTAVAIL的连接()的手册页所表示的错误结果意味着:“指定的地址不是从本地计算机可用。 看着连接()的调用,第二个参数看起来是错误所指的地址,但据我所知,这个参数是远程主机的TCP套接字地址,所以我对这个人感到困惑页面引用本地机器。 这个地址到远程TCP套接字主机是不是从我的本地机器可用? 如果是这样,为什么呢? 它必须成功调用连接()第一次在连接失败之前,它试图重新连接,并得到这个错误。 connect()的参数两次都是一样的。 这个错误是否是一个短暂的错误,如果我尝试再次调用connect可能会消失,如果我等了很久? 如果不是,我应该如何尝试从这个故障中恢复?

socat:通过TTY隧道IP

是否有可能获得一个双向IP隧道ttyS0类似串行(调制解调器)设备socat实用程序? 我试图使用TUN选项,但仍然无法得到结果。 任何build议都欢迎:) 更新: PC1: socat /dev/ttyUSB0,raw,echo=0,b57600,clocal TUN:192.168.1.1/24,up PC2: socat /dev/ttyUSB0,raw,echo=0,b57600,clocal TUN:192.168.1.2/24,up 之后,我看到tun0接口的两端都是正确的地址,但是我不能ping通其他的接口。 而不是,当我发送数据与ping -c 1 192.168.1.1远程socat进程退出,并且它的tun0设备销毁。 有什么build议么?.. UPDATE2: 当我们尝试通过仅使用socat的TCP / IP隧道串行时,会出现成帧问题。 社区开发者Gerhard Rieger对我说: 我担心你是对的。 通过数据报套接字工作,以及 – 运气 – 也通过pipe道。 但在串行线路上,数据包边界可能会消失,在tun接口上发送数据时,这是致命的。 我现在不能提供一个基于社会的解决scheme,对不起。 但是,我将尝试在一个更高版本的发行版中集成一些帧。

如何通过Java获得Linux上的计算机的IP?

如何通过Java获得Linux上的计算机的IP? 我search了networking的例子,我发现一些关于NetworkInterface类,但我不能包裹我的头如何获得IP地址。 如果我有多个networking接口在同一时间运行会发生什么? 哪个IP地址将被返回。 我真的很感激一些代码示例。 PS:我到目前为止已经使用了InetAddress类,这是跨平台应用程序的一个糟糕的解决scheme。 (WIN / Linux的)。

如何从C程序输出主机的IP地址?

我需要使用C语言显示来自本地计算机的所有IP地址。 如何才能做到这一点?