标签: packet

即使这些数据包不属于我,如何将所有传入数据包捕获到 NIC

AFAIK,NIC 从局域网中的线路接收所有数据包,但拒绝那些目标地址不等于其 ip 的数据包。

我想开发一个应用程序来监控用户的互联网使用情况。每个用户都有一个固定的 IP 地址。

我和其他一些人连接到DES-108 8 端口快速以太网非托管桌面交换机

如前所述,我想捕获所有用户的所有流量,而不仅仅是那些属于我的数据包。

我应该如何强制我的 NIC 或其他组件接收所有数据包?

linux networking packet

13
推荐指数
2
解决办法
1万
查看次数

iptables -j REDIRECT *实际上*对数据包头做了什么?

出于好奇,我正在阅读一些关于透明 TOR 代理的教程,因为从网络的角度来看,这是一个非常有趣的话题。与仅使用tun/tap接口且我完全清楚的VPN 网关相反,TOR 代理使用单个端口。所有教程都重复魔术线:

iptables -t nat -A PREROUTING -i eth0 -p tcp --syn -j REDIRECT --to-ports 9040
Run Code Online (Sandbox Code Playgroud)

哪里eth0是输入 (LAN) 接口,9040是一些 TOR 端口。问题是,从网络的角度来看,我完全不明白为什么这样的事情是有意义的。

根据我对redirect/ dst-natchains 的理解以及它在物理路由器中的工作方式,dst-natchain 需要dst-portdst-addr BEFORE路由决定被采取并将它们更改为其他东西。例如:

  • 之前dst-nat192.168.1.2:46364 -> 88.88.88.88:80
  • 之后dst-nat192.168.1.2:46364 -> 99.99.99.99:8080

并且99.99.99.99:8080是 IP 数据包流通道中的进一步链所看到的(例如filter表),这就是从现在开始离开设备后数据包的样子。

现在互联网上很多人(包括在这个stackexchange上)声称与设置为接口的本地地址redirect基本相同。有鉴于此,这条规则:dst-natdst-addr

iptables -t nat -A PREROUTING -i eth0 -p tcp --syn …
Run Code Online (Sandbox Code Playgroud)

routing iptables tor packet iptables-redirect

8
推荐指数
1
解决办法
6377
查看次数

使用 PF 阻止与特定 IP 的传出连接

每当任何 TCP 请求发送到特定 IP 地址时,有人能给我一个关于如何设置基本拒绝规则的提示吗?我正在使用PF 数据包过滤器。有什么帮助吗?

networking firewall pf packet

6
推荐指数
1
解决办法
5627
查看次数

使用 socat/netcat 创建 UDP 到 TCP 桥接器以中继 vlc 媒体播放器的控制命令

UDP - 必须监听端口。TCP - 必须连接到服务器。

我试过netcatsocat

nc -v -u -l -p 3333 | nc -v 127.0.0.1 50000

socat -v UDP-LISTEN:3333,fork TCP:localhost:50000
Run Code Online (Sandbox Code Playgroud)

两者都在工作——他们传递了信息——但这条线并没有结束。如果我关闭 netcat/socat,VLC 只会接受命令。

我监视了与的连接,sockettest消息在同一行中一个接一个,如下所示:

playpausestopexitadd
Run Code Online (Sandbox Code Playgroud)

我需要结束该行,以便传输的消息如下所示:

play
stop
exit
add
Run Code Online (Sandbox Code Playgroud)

也许数据包没有结束?

我想知道是否ncsocat可以选择在一段时间后发送数据包/结束行。

如果我\n按照@roaima 的建议添加到输出中,我会得到play\nstop\nplay\n一行。

bridge tcp udp packet socat

6
推荐指数
1
解决办法
2万
查看次数

IPTABLES:在本地处理数据包并将副本发送到另一台主机

我在配置 iptables 时遇到了麻烦:一些客户端向服务器发送消息。我希望主机服务器在本地处理消息(主机 A,正常情况下),但另外对于每条消息(tcp 数据包)将数据包的副本发送到另一台主机(主机 B,运行服务器的修改版本,我想看看相同消息的行为如何,以便我可以比较两台服务器)。应该用iptables来完成。我已尝试使用以下命令。这些将数据包发送到 B,但主机 A 不处理消息(应该由第二个命令完成?)。

iptables -t nat -A PREROUTING -p tcp --dport 31090 -j DNAT --to-destination IP_HOST_B:32090
iptables -t nat -A POSTROUTING -p tcp --dport 32090 -j SNAT --to-source IP_HOST_A:31090
Run Code Online (Sandbox Code Playgroud)

我在配置中遗漏了什么来实现我的目标?

谢谢你。

linux routing iptables forwarding packet

5
推荐指数
1
解决办法
8650
查看次数

如何在linux上拦截IP数据包

我试图在 Linux 上实现这个目标(不确定是否可行以及如何实现):我需要编写一个程序来拦截接口上的所有 IP 数据包,并将这个数据包传送到一组特定的用户空间程序.

通过拦截,我的意思是,我的程序(可能是内核模块或特殊的用户空间程序)捕获了一个 IP 数据包,然后该数据包不再通过 IP 堆栈。

例如,假设操作系统正在运行大量进程(在内核空间或用户空间中),A、B、C、D...等。如果在某个接口接收到 IP 数据包,请说 eth2 ,我只希望A,B看到这个包,其他所有进程甚至都知道这个包的存在。

有人能把我带到正确的方向吗?

linux networking tap packet

4
推荐指数
1
解决办法
3339
查看次数

如何通过 iptables 获取有关丢弃流量的指标?

我们正在使用 iptables 防火墙。它根据定义的规则记录和删除各种包。iptables 日志文件条目如下所示:

2017-08-08T19:42:38.237311-07:00 compute-nodeXXXXX kernel: [1291564.163235] drop-message : IN=vlanXXXX OUT=cali95ada065ccc MAC=24:6e:96:37:b9:f0:44:4c:XX:XX:XX:XX:XX:XX SRC=10.50.188.98 DST=10.49.165.68 LEN=60 TOS=0x00 PREC=0x00 TTL=57 ID=14005 DF PROTO=TCP SPT=52862 DPT=50000 WINDOW=29200 RES=0x00 SYN URGP=0
Run Code Online (Sandbox Code Playgroud)

有没有办法获得丢弃的数据包的数量?我想计算最后一分钟、一小时内丢弃的数据包数量等指​​标...... 很快。

主要目的是监控配置错误和安全漏洞。如果防火墙规则有错误,就会突然开始丢弃一堆数据包。类似地,如果发生攻击,我们预计被拒绝的数据包数量会发生变化。

networking firewall iptables packet

4
推荐指数
1
解决办法
1万
查看次数

如何检查我的发行版内核中是否启用了数据包套接字支持?

如何检查数据包套接字支持是否已编译到我的内核中?我正在运行 Crunchbang,一个基于 Debian 的发行版。

kernel debian ethernet linux-kernel packet

3
推荐指数
1
解决办法
3646
查看次数

记录在 iptables 中丢弃的数据包的内容

我试图找到一种方法来记录根据 iptables 中的规则丢弃的数据包(可能使用 tcpdump)的全部内容。

目前,我有一个规则来记录这些数据包(带有日志前缀),然后按照这个规则来删除它们。

有没有办法记录这些数据包的内容以供以后查看?

所以,我正在寻找这个:

  1. 记录匹配数据包的规则
  2. 将数据包传递到记录其内容的新目标(可能是 QUEUE 目标?)
  3. 丢弃数据包的规则

2 & 3 甚至可以组合。

我的理解是 tcpdump 可能无法做到这一点,因为它iptables之前检查数据包,因此不会只记录丢弃的数据包。

谢谢。

iptables tcpdump packet

3
推荐指数
1
解决办法
4682
查看次数

如何限制现有进程的下载带宽?(iptables、tc、?)

我很高兴通过端口限制上传速度 - 但真的想通过进程限制下载。

看来 iptables 确实具有按进程以--pid-owneror的形式匹配和标记数据包的功能--cmd-owner- 但现在两者都已被删除?

$ iptables -m owner --help
...
owner match options:
[!] --uid-owner userid[-userid]      Match local UID
[!] --gid-owner groupid[-groupid]    Match local GID
[!] --socket-exists                  Match if socket exists
Run Code Online (Sandbox Code Playgroud)

似乎有按用户或组匹配的选项,但没有按进程匹配的选项。

我知道trickle和wondershaper - 但都不允许对已经运行的进程进行整形

linux networking iptables tc packet

3
推荐指数
1
解决办法
4517
查看次数

Shell 脚本等待来自某个端口的数据包

当有人尝试在端口 25565 上连接到我的我的世界服务器时,我想启动它。我有一个服务器插件,它在没有玩家在线的情况下在 x 分钟后关闭它。使用 shell 脚本,我创建了一个循环,在服务器关闭时启动它:

#!/bin/bash
while true
do
    # run server
    java -Xms2048M -Xmx2048M -Djava.awt.headless=true -jar "craftbukkit.jar"
    # server shut down

    # run MCSignOnDoor
    java -jar MCSignOnDoor.jar --sentrymode -m "Gone Fishin' Back in Five Minutes!"
    # McSignOnDoor shut down

    # stop loop if error code is not 12
    # so only restart the server when the program ended because of a packet
    if [ "$?" -ne "12" ]; then
        break
    fi
done
Run Code Online (Sandbox Code Playgroud)

McSignOnDoor 是一个 Java 程序,它模拟了一个活动服务器,一旦有人用退出代码 12 …

shell networking packet

2
推荐指数
1
解决办法
1634
查看次数

什么会导致较大的 TX 与 RX 平均字节/数据包差异?

根据我对来自 的数据进行的计算ifconfig,我的路由器和计算机之间的以太网连接对于 TX(接近 1500 的 MTU)平均为 1298 字节/数据包,而对于 RX 只有 131 字节/数据包。什么会导致平均 TX 与 RX 数据包大小出现如此大的差异?

networking ethernet packet ifconfig

2
推荐指数
1
解决办法
6229
查看次数

在受感染机器的浏览器中选择记住我选项是不是很糟糕?

我正在阅读一篇关于如何嗅探网络数据包的文章。(当然仅用于知识目的)。我遇到了这些特殊的线条。

例如,假设我正在嗅探网络上的流量,并且您登录了 Facebook 并选中了在这台计算机上记住我复选框。这表示 Facebook 向您发送浏览器存储的会话 cookie。我可能可以通过数据包嗅探收集该 cookie,将其添加到我的浏览器,然后访问您的 Facebook 帐户。

那么,假设我的 Linux 客户端受到了威胁并且目前不知道它,这是否意味着如果我点击remember me了这台机器登录我的帐户,我的个人信息就会受到影响?被入侵机器的cookie信息如何可以在任何黑客的浏览器中使用?

networking security packet tcp-ip

1
推荐指数
1
解决办法
190
查看次数