Web 应用程序的沙箱环境可通过 IP 地址直接访问:http://<my_ip_address>无需登录名。
有没有办法在我的本地机器上创建一个虚拟主机,命名为<my_ip_address>,并更改 /etc/hosts 以便它“重定向”到我的本地主机?
127.0.0.1 <my_ip_address>
Run Code Online (Sandbox Code Playgroud)
那么当我加载 url 时http://<my_ip_address>,浏览器会指向我的本地主机吗?我已经可以重定向域名的方式。
Too*_*eve 22
Hosts文件只能用于将域名与 IP 关联;它无法将 IP 映射到 IP。
更改 IP 可以通过防火墙来完成。在 Linux 上,默认防火墙由iptables命令控制。“man iptables”是文档。谷歌“explain iptables”的介绍性解释。
一些链接:
http://linux.die.net/man/8/iptables
http://www.linuxnix.com/2009/12/iptables-in-linux-explained.html
http://blog.adityapatawari.com/2011/12/ip-packet-filtering-iptables-explained.html
具体来说,您希望将来自您的 PC 的 OUTGOING 请求更改为 IP 地址 ( <my_ip_address>),以便它们改为转到不同的 IP 地址,在本例中为 127.0.0.1。您想要执行NAT(网络地址转换),给定“目标 IP”(<my_ip_address>例如 123.45.67.89),将其更改为不同的“目标 IP”(127.0.0.1)。
试试这个(代替123.45.67.89,把需要修改的 ip_address 放在):
iptables -t nat -A OUTPUT -p all -d 123.45.67.89 -j DNAT --to-destination 127.0.0.1
Run Code Online (Sandbox Code Playgroud)
细节:
-t nat = 用于将一个地址转换为另一个地址的表
-A OUTPUT = 附加到本地生成的传出数据包的规则列表。 安全警告:确保规则包含此 OUTPUT 指令。如果不这样做,该规则将创建一个可能的安全漏洞,因为来自远程位置的匹配传入数据包也将被定向到本地主机。
-p all = 适用于所有协议(tcp、udp 和 icmp)。
-d 123.45.67.89 = 数据包要去的原始 IP 地址(其目的地)。
-j DNAT = 如果规则匹配(在这种情况下,如果传出数据包的目标 IP 为 123.45.67.89),则使用 DNAT 处理它,从而改变目标。
--to-destination 127.0.0.1 = 告诉 DNAT 做什么;用“127.0.0.1”替换原始目的地。
(注意:如果您遇到更复杂的情况,例如拦截对特定网页的请求,另一种解决方案可能是使用“代理”软件。)
| 归档时间: |
|
| 查看次数: |
40462 次 |
| 最近记录: |