这两个工具有什么区别?
谁能告诉我 Linux 背后的网络主要工作流程(与 IPv4 数据包过滤、NAT 和 IP 路由表相关)是什么?
答案1
route
是一个显示、添加和删除内核的 TCP/IP 路由表(又名“转发信息库”)条目的命令。
iptables
是一个显示、添加和删除 Netfilter(Linux 内核的数据包过滤和操作子系统)条目的命令。它处理 NAT。
由于 IP 转发(即路由)基本上是使用不同的源地址重写数据包并将其从不同的网络接口发送出去,所以我相信您可以在技术上使用表iptables
中的适当规则进行静态路由mangle
,但我相信让内核的路由部分执行此操作通常是最快的。
有许多图表可以准确说明 TCP/IP 数据包如何穿过内核(包括 Netfilter 和路由工具) - 例如:http://www.adminsehow.com/2011/09/iptables-packet-traverse-map/