Articles of networking

在scapy中过滤sniff函数的选项

我正在开发一个基于scapy的工具,在这里我需要根据协议和目标的ip地址来嗅探数据包 我想知道如何使用sniff()函数中的filter选项。 我尝试在文档中使用格式,但大多数情况下它会导致这样的问题。 scapy中的sniff函数的filter不能正常工作 。 我使用的是 a=sniff(filter="host 172.16.18.69 and tcp port 80",prn = comp_pkt,count = 1) 提前致谢!

Linux TUN / TAP:无法从TAP设备读取数据

问题是关于如何正确configuration想要使用Tun / Tap模块的Linux主机。 我的目标: 利用现有的路由软件(下面的APP1和APP2),但拦截并修改它发送和接收的所有消息(由调解员完成)。 我的情景: Ubuntu 10.04 Machine +———————————————+ | | |APP1 — tap1 — Mediator — tap2 — APP2 | | | +———————————————+ tap1和tap2:分别使用IFF_TAP标志和IP 10.0.0.1/24和10.0.0.2/24设置的tap设备。 创build设备的代码如下所示: #include <stdlib.h> #include <stdio.h> #include <sys/socket.h> #include <sys/ioctl.h> #include <fcntl.h> #include <linux/if.h> #include <linux/if_tun.h> #include <string.h> #include <errno.h> #include <sys/resource.h> void createTun(char *, char *, short); int […]

检查从简单的Linux CLI应用程序的networkingstream量

我正在命令行上运行一个小应用程序,并试图监视它创build的(http)networkingstream量。 有什么包装程序(如'时间',或'看'),可以显示所有networkingstream量和我的应用程序? (或者至less在文件中复制一份)

如何configurationlinux路由,将数据包从一个接口发送出去,通过一个网桥,并进入同一个盒子的另一个接口

我试图testing一个以太网桥接设备。 我有一个Linux机箱上的多个以太网端口。 我希望将数据包从一个接口(例如IP 192.168.1.1的eth0)发送到另一个接口(例如IP为192.168.1.2的eth1)在同一个子网上。 我意识到通常你不要在同一个子网上configuration两个接口,如果你直接把内核路由到每个接口,而不是通过networking。 我怎样才能覆盖这种行为,使stream量到192.168.1.2出去的192.168.1.1接口,反之亦然? 提前致谢!

如何获取NIC卡的逻辑名称,给出与其相关的IP地址?

我正在研究一个shell脚本,它需要知道与给定ip关联的逻辑名(eth0,eth1等)。 我正在使用的当前过程是使用filterparsingifconfig的输出并获取与给定IP关联的NIC卡。 我想知道是否存在一个简单的方法或直接stream水线Linux命令来获得上述细节?

如何使用tc和cgroup修改数据包

我正在尝试优先处理从某个进程组生成的数据包,以便首先从PC中select它们。 我的目标是通过使用cgroups和tc来做到这一点,但似乎不工作。 首先,我在ubuntu上设置cgroups如下, modprobe cls_cgroup # load this module to get net_cls mkdir /sys/fs/cgroup/net_cls # mount point mount -t cgroup net_cls -onet_cls /sys/fs/cgroup/net_cls/ mkdir /sys/fs/cgroup/net_cls/foo # new cgroup echo 0x00010001 > /sys/fs/cgroup/foo/net_cls.classid # echo in a class id echo 2348 > /sys/fs/cgroup/net_cls/foo/tasks # echo in pid of firefox tc qdisc add dev eth0 root handle […]

如何获得3g的调制解调器信号强度在C + +的Linux?

没有使用AT命令我们怎么能得到3G调制解调器的信号强度? NetworkManager的gdbus对象没有像getSignalStrength这样的方法。 networkingpipe理员正在locking设备文件以防止使用AT命令。 nm-applet能够在系统托盘中显示信号强度。 所以应该有一种方法来获得networkingpipe理员的信号强度! nmcli是nm-applet的命令行计数器部分。 我nmcli获得信号强度吗? 手册中没有提到信号强度。

在网上运行一个Qt应用程序

我正在编写一个使用Qt的应用程序,并试图将其部署为一个Web应用程序。 我希望用户能够通过Web浏览器访问我的应用程序。 我猜这是一个networking应用程序是什么? 我有什么样的select? 我从来没有想过做这样的事情,但我想学习新的东西。 编辑:如果我将我的应用程序部署在Linux服务器上,并让用户通过terminal访问/运行,该怎么办? 我认为写Web应用程序将比我原先想象的更复杂。

scapy中的sniff函数的filter不能正常工作

似乎snifffunction的filter不能正常工作。 我用下面的filter执行嗅探 a=sniff(count=1,filter="tcp and host 192.168.10.55 and port 14010") 但有一段时间, sniff捕获这样的UDP数据包: >>> a=sniff(count=1,filter="tcp and host 192.168.10.55 and port 14010") >>> a <Sniffed: TCP:0 UDP:1 ICMP:0 Other:0> 有一段时间, sniff捕获错误端口的TCP数据包: >>> a=sniff(count=1,filter="tcp and host 192.168.10.55 and port 14010") >>> a <Sniffed: TCP:1 UDP:0 ICMP:0 Other:0> >>> a[0] <Ether dst=00:26:55:cb:3b:10 src=00:22:64:55:c8:89 type=0x800 |<IP version=4L ihl=5L tos=0x10 len=92 id=8683 […]

如何提升Asio的主机名parsing在Linux上的工作? 是否可以使用NSS?

我试图使我的networking应用程序在本地工作(服务器和客户端在同一台计算机上运行),当没有networking连接时。 这似乎“偶尔工作”,但大部分时间我最终: terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::system::system_error> >' what(): Host not found (authoritative) Aborted 我目前使用的代码是: tcp::resolver::query query(host, PORT); tcp::resolver::iterator endpointIterator = resolver.resolve(query); tcp::resolver::iterator end; boost::system::error_code error = boost::asio::error::host_not_found; while(error && endpointIterator != end) { mySocket.close(); mySocket.connect(*endpointIterator++, error); } if(error) throw boost::system::system_error(error); 我敢肯定,我已经把问题缩小到ip :: basic_resolver :: resolve ,但我无法弄清楚如何在Linux上实现,或者我可能想要使用什么。 这似乎是同一个问题。 看来,只是不执行任何查找,只是使用127.0.0.1应该工作,但是当我试图取代查询行 tcp::resolver::query query(host, PORT, […]