很多iptables
时候我看到目标 化装舞会。那是什么?我搜索了很多东西。但我需要有人向我解释什么 化装舞会是以一种容易理解的方式吗?
一个例子(取自这个答案) 是:
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
答案1
它是一种依赖于 iptables 实现的算法,允许在不中断原始流量的情况下路由流量。
当我想创建一个虚拟 wifi 适配器并共享我的 wifi 时,我使用伪装算法。
我不是在谈论通过您的 wifi 共享以太网连接,而是在谈论通过伪装成虚拟适配器来通过您的 wifi 共享 wifi 连接。这实际上允许您通过 wifi 共享您的 wifi 连接。
。
。
阅读此内容并向下滚动至 MASQUERADE:http://billauer.co.il/ipmasq-html.html
欲了解更多详情,请阅读:http://oreilly.com/openbook/linag2/book/ch11.html
所有关于“Connectify for linux”的问题都可以通过实施 MASQUERADE 算法来解决。
要查看直接示例,请访问此页面:http://pritambaral.com/2012/05/connectify-for-linux-wireless-hotspot/
我还没有读过最后一个链接!但以下是准确的摘录/例子。
sudo sysctl -w net.ipv4.ip_forward=1
sudo iptables -A FORWARD -i wlan0 -j ACCEPT
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
我真的不喜欢搜索引擎把算法变成某种邪恶的黑客行为。我使用它只是为了与我的安卓手机共享互联网。
最终编辑:这个链接是最好的http://gsp.com/cgi-bin/man.cgi?section=3&topic=libalias
答案2
MASQUERADE 是一个 iptables 目标,当在编写规则时不知道 inet 接口的外部 IP(当服务器动态获取外部 IP 时)时,可以用它来代替 SNAT 目标(源 NAT)。
答案3
研究了以上答案后,我明白了这一点:
伪装允许整个内部 IP 地址网络通过一个外部 IP 地址运行。作为副作用,伪装允许从一种协议转换为另一种协议(有线/无线)。
当MASQUERADE链从计算机发送数据报时它......
- 记下数据报的类型,“TCP”、“UDP”、“ICMP”等。注意:未知类型可能无法通过 MASQUERADE 正常工作。
- 修改数据报,使其看起来像是由路由器机器本身(一个外部地址)生成的。
- 记住它已经这样做了,记录本地源和外部目标 IP。
- 使用单个外部 IP 地址将数据报传输到互联网上。
注意:当目标主机收到此数据报时,它会认为该数据报来自一个路由主机,并将所有回复数据报发送回该地址。
当 Linux MASQUERADE 链从其 Internet 连接接收到数据报时,
- 它查看已建立的伪装连接表,看看该数据报是否真正属于 LAN 上的一台计算机。
- 如果是,它会撤销在前向路径上所做的修改,并将数据报传输到 LAN 计算机。
MASQUERADE 链对于内部创建整个私有 IP 地址空间以及转发原本不兼容的数据包很有用。
以太网(有线协议)假设数据包来自源并报告自身。Wifi(无线协议)假设数据包被重复并报告自身和原始源。
因此,Wifi 和以太网无法直接桥接,因为它们不兼容。伪装会导致数据包重建,从而处理有线和无线标准之间的转换。注意:有办法让您的计算机在内部接受不兼容性并进行桥接,但如果没有完整的伪装,桥接欺骗将在外部被视为安全风险,这些请求将被拒绝。