我想我几乎在 CentOS 5.3 系统上完成了 iptables 设置。这是我的脚本...
# Establish a clean slate
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -F # Flush all rules
iptables -X # Delete all chains
# Disable routing. Drop packets if they reach the end of the chain.
iptables -P FORWARD DROP
# Drop all packets with a bad state
iptables -A INPUT -m state --state INVALID -j DROP
# Accept any packets that have something to do with ones …Run Code Online (Sandbox Code Playgroud) 我正在设置一个 Debian 机器作为 4 个子网的路由器。为此,我在连接 LAN 的 NIC 上定义了 4 个虚拟接口 ( eth1)。
eth1 Link encap:Ethernet HWaddr 94:0c:6d:82:0d:98
inet addr:10.1.1.1 Bcast:10.1.1.255 Mask:255.255.255.0
inet6 addr: fe80::960c:6dff:fe82:d98/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:6026521 errors:0 dropped:0 overruns:0 frame:0
TX packets:35331299 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:673201397 (642.0 MiB) TX bytes:177276932 (169.0 MiB)
Interrupt:19 Base address:0x6000
eth1:0 Link encap:Ethernet HWaddr 94:0c:6d:82:0d:98
inet addr:10.1.2.1 Bcast:10.1.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:19 Base address:0x6000
eth1:1 Link encap:Ethernet HWaddr …Run Code Online (Sandbox Code Playgroud) 当我从笔记本电脑对 www.google.com 域进行跟踪时,我使用的是 icmp 还是 udp ?
我以为是 icmp 类型 11,但是在搜索其他内容时,我遇到了使用 icmp 类型 30 的规则,并且看到了使用 udp 的规则。
有人可以向我解释这是如何工作的吗?
我正在为虚拟专用服务器开发防火墙(iptables)。
我(和一位同事)刚刚注意到并测试过,当一台 Linux 机器被 ping 时,在最后一次 ping 之后,它会向启动 ICMP ping 的机器发起单播ARP 请求。ping Windows 机器时,Windows 机器最后不会发出 ARP 请求。
有谁知道这个单播 ARP 请求的目的是什么,为什么它发生在 Linux 而不是 Windows?
Wireshark 跟踪(10.20.30.45 是一个 Linux 机器):
No.Time Source Destination Prot Info
19 10.905277 10.20.30.14 10.20.30.45 ICMP Echo (ping) request
20 10.905339 10.20.30.45 10.20.30.14 ICMP Echo (ping) reply
21 11.904141 10.20.30.14 10.20.30.45 ICMP Echo (ping) request
22 11.904173 10.20.30.45 10.20.30.14 ICMP Echo (ping) reply
23 12.904104 10.20.30.14 10.20.30.45 ICMP Echo (ping) request
24 12.904137 10.20.30.45 10.20.30.14 ICMP Echo …Run Code Online (Sandbox Code Playgroud) ICMP 在 OSI 模型中被归类为第 3 层协议,但据我所知它不符合网络层协议的定义。
它不提供寻址或数据包路由(为此使用 IP),因此它所做的只是将信息从一个节点发送到另一个节点,就像传输协议一样。那么,既然如此,为什么 ICMP 被归类为第 3 层协议?
我正在使用 CentOS 5.x,试图在我的一台服务器上考虑以下 iptables 规则:
-A RH-Firewall-1-INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
在另一台服务器上,我有:
-A RH-Firewall-1-INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s --limit-burst 3 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
我知道这两个规则都旨在允许(和限制)传入的 ping 请求,但limit-burst选项是什么?这些津贴是基于每个主机的吗?或者它们是否适用于任何/所有传入的 ICMP 连接?
以下问题只是我遇到问题的更大解决方案的一部分。到目前为止,所有其他元素似乎都在工作,所以我将尝试描述我有问题的非常小的部分。
我有一台 linux 机器,带有tun0(隧道接口)和eth0(witch 是我默认的互联网网关)。
目标:我的目标是接收从 tun0 传入的数据包,并将它们转发到默认网关。所以实际上非常简单的 NAT 案例,我想与伪造物理接口的 tun0“共享”互联网。
Tun 是使用创建的
sudo openvpn --mktun --dev tun0 --user USER
sudo ip addr add 10.2.0.1/24 dev tun0
sudo ip link set tun0 up
Run Code Online (Sandbox Code Playgroud)
所以我让它启动并运行,我可以 ping 它等等。此外,我有 C++ 应用程序,它连接到这个 TUN 设备,可以读取和写入它。(fti:这是我遵循的教程:http : //backreference.org/2010/03/26/tuntap-interface-tutorial/)
我将一些对 8.8.8.8 发出的正确 ICMP(ping)请求转储到 C++ 中的字节数组中。现在,使用我的程序将它写入 tun0 设备。ICMP 请求有
然后,我有以下路线:
iptables -F # flush
iptables …Run Code Online (Sandbox Code Playgroud) 阻止/丢弃公共 Web 服务器上的入站 ICMP 流量的目的是什么?被屏蔽很常见吗?
我必须测试是否可以从不同位置访问服务器(在位于不同州/国家的不同服务器上测试)。我将 ping 作为一种快速可靠的方法来确定服务器是否在线/网络可访问。在几个盒子上没有收到回复后,我尝试使用 lynx 加载网站,并且成功了。
tcp ping 或 traceroute 如何工作?它是否只考虑了建立 TCP 握手所需的时间?
同样在ICMP ping中您可以指定数据包大小,这可以在TCP ping中实现吗?
我正在使用 Debian Stretch (9.7) 配置 GNU/Linux 路由器,在重新启动服务器之前,从一个接口到另一个接口的所有流量都正常,但在那之后,我收到了这样的消息 (tty):
enp1s6: Something Wicked happened! ffff.
Run Code Online (Sandbox Code Playgroud)
我在同一交换机和同一网络上有一台主机,用于测试目的,基本上,路由器的 LAN 不响应回显请求。
这里有一些关于服务器的信息。
内核日志
Jan 25 08:58:02 server001 kernel: [25060.494127] enp1s6: Link changed:
Jan 25 08:58:02 server001 kernel: [25060.494127] 100Mbps, half duplex
Jan 25 08:58:02 server001 kernel: [25060.494254] enp1s6: Something Wicked happened! ffff.
Jan 25 08:58:02 server001 kernel: [25060.497338] enp1s6: Link up
Jan 25 08:58:02 server001 kernel: [25060.497557] enp1s6: Link changed:
Jan 25 08:58:02 server001 kernel: [25060.497557] 100Mbps, full duplex
Jan 25 08:58:02 server001 kernel: [25060.499986] …Run Code Online (Sandbox Code Playgroud)