• 2024-09-03安全:nftables清空与删除
    一,清空一个链下面的规则清空前:[root@fedora~]#nft-alistchaininetfirewalldfilter_IN_FedoraWorkstation_allowtableinetfirewalld{chainfilter_IN_FedoraWorkstation_allow{#handle52ip6daddrfe80::/64udpdport546accept#
  • 2024-09-02安全:nftables的常用命令(查看规则)
    一,nftables的地址簇和相应的iptables命令行工具nftables的地址簇iptables命令行工具ip  仅匹配IPv4数据包。如果没有指定地址系列,这是默认设置iptablesip6   ip6tablesinet   iptables和ip6tablesarp   arptablesbridge   ebtable
  • 2024-08-142788647047_process_packet_1
    在函数`_process_packet`中,IPv4和IPv6的处理代码如下:```pythonifip_version==0x04:#IPv4ip_header=struct.unpack("!BBHHHBBH4s4s",ip_data[:20])fragment_offset=ip_header[4]&0x1fffiffragment_offset!=0:returniph_lengt
  • 2024-08-08sed 命令与正则表达式
    sed是非交互式的编辑器。它不会修改文件,除非使用shell重定向来保存结果。默认情况下,所有的输出行都会被打印到屏幕上。sed编辑器逐行处理文件(或输入),并将结果打印到屏幕上。具体过程如下:首先sed把当前正在处理的行保存在一个临时缓存区中(也称为模式空间),然后处理临时缓
  • 2024-07-24Solaris IPMP两种配置方法
    更换华为防火墙后,发现Solaris基于ip探测方式配置的IPMP呈现failed状态。经过分析,更改为基于link的IPMP配置方式后,解决了这次问题。1、MultipleinterfaceLinkbasedIPMPconfigurationa.Active–ActiveconfigurationCommandline:#ifconfige1000g0plumb192.168.1.
  • 2024-07-20【C】inet_pton函数与inet_ntop
    1、inet_pton#include<arpa/inet.h>intinet_pton(intaf,constchar*restrictsrc,void*restrictdst);将IPv4和IPv6地址从文本转为二进制。af参数有以下取值:AF_INETsrc指向ipv4地址文本,格式ddd.ddd.ddd.ddd。地址会被转化为structin_addr,然后将该结构体拷贝到dst
  • 2024-07-02linux 4.19 ip重组
    IP重组ip重组这部分4.19内核与3.10内核有些差别,4.9.134以后内核中不使用低水位和工作队列了,同时使用了rhashtable替代了hashbucket的概念,在3.10内核中使用1024个hashbucket,每个bucket中最多存放128个分片队列,在4.19内核中所有的分片队列都保存在可动态调整的rhashtable中
  • 2024-06-04网络字节序和本地字节序之间转换
    网络字节序和本地字节序之间转换目录网络字节序和本地字节序之间转换主机字节序网络字节序相关函数htons,htonl,ntohs,和ntohl相关函数inet_aton,inet_ntoa,inet_pton,和inet_ntop当我们与同一台计算机的进程进行通信时,一般不用考虑字节序。什么是字节序——字节序是一
  • 2024-05-16YouCompleteMe如何获得未使用的端口
    intro由于每次vim都启动一个ycmd服务进程,并且端口地址是由vim客户端指定的(因为ycmd启动之后vim客户端需要连接过去),所以vim在指定端口的时候就需要给出一个当前没有使用中的端口。那么如何获得一个未使用的端口呢?tsecer@harry:psaux|fgrepycmdtsecer+30220840.92.5
  • 2024-03-31从零开始 使用OMNET++结合VEINS,INET和SUMO的联合仿真
    背景知识当我们探索未来的交通系统和智能交通解决方案时,车辆到一切(Vehicle-to-Everything,V2X)通信技术显得尤为重要。V2X是指在车辆与车辆(V2V)、车辆与基础设施(V2I)、车辆与行人(V2P)以及车辆与网络(V2N)之间进行的通信。这种技术能够提高道路安全,优化交通流量,减少拥堵,提升驾驶体验
  • 2024-03-28arp命令 参数
    arp/?显示并修改地址解析协议(ARP)使用的IP到物理地址转换表。ARP-sinet_addreth_addr[if_addr]ARP-dinet_addr[if_addr]ARP-a[inet_addr][-Nif_addr][-v]-a      通过查询当前协议数据显示当前ARP条目。如果指定inet_addr,则仅显示指定计算机
  • 2024-03-22tcp/ip网络通信时的大小端序转换
    1.短整形/长整形的转换#include<arpa/inet.h>//u:unsigned//16:16位,32:32位//h:host,主机字节序//n:net,网络字节序//s:short//l:int//这套api主要用于网络通信过程中IP和端口的转换//将一个短整形从主机字节序->网络字节序uint16_thtons(
  • 2024-03-13Kylin Server sp4下多网卡DHCP配置
    1.配置服务器网的IP地址root@dhcp:~#vim/etc/network/interfaces#interfaces(5)fileusedbyifup(8)andifdown(8)autoloifaceloinetloopbackautoenp1s0f0ifaceenp1s0f0inetstaticaddress172.15.1.1netmask255.255.255.0autoenp1s0f1ifaceen
  • 2024-03-12Windows下使用winsock库实现tcp客户端通信,C/C++
    编程思路第一步创建一个WASDATA结构体变量,用于存储关于Winsock库的信息;初始化Winsock库。第二步创建TCP套接字。第三步创建sockaddr_in结构体变量,用于储存服务器地址信息。里面包括设置地址族、IP地址、端口号。第四步调用connect函数连接服务器。通信调send函数发送数
  • 2024-03-11debian12.5配置静态IP
    root@debian:~#cat/etc/network/interfaces##Thisfiledescribesthenetworkinterfacesavailableonyoursystem##andhowtoactivatethem.Formoreinformation,seeinterfaces(5).##source/etc/network/interfaces.d/*###Theloopbacknetworkinterface#aut
  • 2024-02-06socket地址API
    目录主机字节序和网络字节序通用socket地址专用socket地址ip地址转换函数主机字节序和网络字节序在Linux系统中,主机字节序(HostByteOrder)和网络字节序(NetworkByteOrder)是两个重要的概念。主机字节序是指CPU直接处理数据时使用的字节序。在x86架构的Linux系统中,主
  • 2024-01-30网络收包讲解
     图1整体流程图一、系统启yjqe动1.1概述网卡驱动的加载网卡驱动的初始化(probe)网卡设备的启用(ndo_open)软中断进程初始化(ksoftirqd)网络子系统初始化(net)网络协议栈初始化1.2网卡驱动的加载网卡需要有驱动才能工作,驱动是加载到内核中的模块,负责衔接网卡
  • 2024-01-29nftables了解使用
    使用nftables进行包管理和实现防火墙功能涉及以下几个基本步骤:安装nftables:在大多数现代Linux发行版中,nftables通常已经作为标准软件包包含在内。如果未安装,可以通过包管理器(如apt、yum或dnf)来安装它。#对于基于Debian的系统:sudoapt-getinstallnftables#对
  • 2024-01-21Linux内核accept系统调用源码分析
    内核版本:Linux3.10内核源码地址:https://elixir.bootlin.com/linux/v3.10/source(包含各个版本内核源码,且网页可全局搜索函数)一、应用层-accept()函数/***sockfd:监听socket的文件描述符*addr:存放地址信息的结构体的首地址(用来保存客户端的IP、Port)*addrlen:存放地
  • 2024-01-14socket
    引入Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。所以,我们无需深入理解tcp/udp协议,socket已经
  • 2024-01-14系统无ifconfig,一条命令获取本机ip并将其赋值给指定变量来使用
    在Linux系统中,准确地获取本机IP信息是非常有用的。在写bashshell脚本事经常会用到IP,这时就需要我们使用一些办法获取本机IP并赋值给变量来使用。最近刚刚完成grep及sed的摸索、研究,本着学以致用的原则,用一条命令获取本机IP并将其赋值给某个变量来使用。由于CentOS7.2中已经不再集
  • 2024-01-01Linux内核bind系统调用源码分析
    一、环境说明内核版本:Linux3.10内核源码地址:https://elixir.bootlin.com/linux/v3.10/source(包含各个版本内核源码,且网页可全局搜索函数)二、应用层-bind()函数将socket套接字绑定指定的地址:/**sockfd:由socket函数返回的套接口描述符*sockaddr:一个指向特定于协议
  • 2023-12-31Linux内核socket系统调用源码分析
    一、环境说明内核版本:Linux3.10内核源码地址:https://elixir.bootlin.com/linux/v3.10/source(包含各个版本内核源码,且网页可全局搜索函数)二、应用层-socket()函数应用层创建socket对象返回整型的文件描述符。/*family:被称为协议族,或者协议域。*type:套接字类型。*
  • 2023-12-28网络地址转换(NAT)之报文跟踪
    网络地址转换(NAT)之报文跟踪来源  https://fedoramagazine.org/network-address-translation-part-1-packet-tracing/参考 https://linux.cn/article-13364-1.html 这是有关 网络地址转换(networkaddresstranslation)(NAT)的系列文章中的第一篇。这一部分将展示如何使用i
  • 2023-12-19debian11网络配置文件
    背景介绍近期公司新装了一批测试环境的机器,系统是Debian11,第一次配置Debian的静态网络IP,特此记录一下。(debian11默认的配置文件中的网卡名称未必是对的,请使用ip-a进行确认后进行修改。)配置文件root@server20x:~#cat/etc/network/interfaces#Thisfiledescribesthenet