作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在项目中实现了BrowserMobProxy
。此逻辑使用 IP 地址进行代理连接和测试 UI Web 服务(用于请求/响应统计保存的代理)。之前一切正常,但我们重新启动 docker 并更改了代理的 IP 地址。现在我需要为代理找到一个新的 IP 地址。
使用IP地址的代码
public static void startProxyServer(String address) {//address = "172.17.0.2"
if (browserMobProxy.isStarted()) {
browserMobProxy.stop();
}
try {
browserMobProxy.start(9090, Inet4Address.getByName(address)); // {1}
useExclusivePort = browserMobProxy.getPort();
} catch (Exception e) {
throw new RuntimeException(e);
}
}
docker 重新启动后,项目开始在 {1}
行失败。我开始在服务器上搜索新 IP。不幸的是,我无法使用 docker 镜像中的 ifconfig
命令,因为该命令未安装在那里。所以我通过以下方式确定了来自服务器的地址:
在我使用 IP 172.17.0.2 后,代码运行良好,我希望我能解决这个问题,但事实证明我失去了与该代理的连接 - 在 UI 上我得到以下结果:
所以我完全糊涂了:
#问题:
我需要如何找到可用于代理连接的正确 IP?
最佳答案
还有一些其他的命令可以让你找到你的服务器运行在哪个ip上。检查您是否有权访问以下任何内容
先试试
netstat -an
这将为您提供服务器正在监听的所有 IP 以及哪些端口,以及连接到其上的 IP 以及端口
如果这不起作用试试这个 https://dev.to/trexinc/netstat-without-netstat-inside-containers-9ak
然后尝试
ip addr
这会给你类似 ifconfig 的输出
最后你可以试试
docker inspect -f '{{ .NetworkSettings.IPAddress }}' containerID
这将为您提供 docker 的网络接口(interface)
关于java - 浏览器代理 : How to determine IP for proxy server?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65583253/
我是一名优秀的程序员,十分优秀!