当前位置: 首页 > news >正文

做网站要学会什么语言国内ip地址 免费

做网站要学会什么语言,国内ip地址 免费,供应优惠的小企业网站建设,做公司网站有什么好处一. 原理 将TCP相关内容&#xff08;TCP伪头部TCP头部TCP内容&#xff09;转换成16比特的字符&#xff0c;然后进行累加&#xff0c;最后结果进行取反。TCP伪头部是固定的&#xff0c;下文有相关代码展示。 二. 源码 源码 #include <stdio.h> #include <stdlib.h&…

一. 原理

将TCP相关内容(TCP伪头部+TCP头部+TCP内容)转换成16比特的字符,然后进行累加,最后结果进行取反。TCP伪头部是固定的,下文有相关代码展示。

二. 源码

  1. 源码
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <arpa/inet.h>
#include <netinet/in.h>
#include <netinet/ip.h>
#include <netinet/ether.h>// 伪头部结构体
struct pseudo_header {uint32_t source_address;uint32_t dest_address;uint8_t zero;uint8_t protocol;uint16_t tcp_length;
};// 计算16位校验和
uint16_t calculate_checksum(uint16_t *buff, int size) {uint32_t sum = 0;while (size > 1) {sum += *buff++;size -= 2;}if (size > 0) {sum += *buff & 0xFF;}while (sum >> 16) {sum = (sum & 0xFFFF) + (sum >> 16);}return (uint16_t)(~sum);
}// 计算TCP校验和
uint16_t calculate_tcp_checksum(struct iphdr *ip_hdr, uint8_t *tcp_packet, int tcp_len) {struct pseudo_header pshdr;uint16_t *header_ptr;int total_len = sizeof(struct pseudo_header) + tcp_len;pshdr.source_address = ip_hdr->saddr;pshdr.dest_address = ip_hdr->daddr;pshdr.zero = 0;pshdr.protocol = IPPROTO_TCP; // TCP protocol number, =6pshdr.tcp_length = htons(tcp_len);// Allocate memory for pseudo header and TCP packetuint8_t *data = malloc(total_len);memcpy(data, (char *)&pshdr, sizeof(struct pseudo_header));memcpy(data + sizeof(struct pseudo_header), tcp_packet, tcp_len);// Calculate checksumuint16_t checksum = calculate_checksum((uint16_t *)data, total_len);free(data);return checksum;
}int main() {//IP信息char ip_head[] = {0x45, 0x00, 0x00, 0xc8, 0x14, 0x2b, 0x40, 0x00,0x3f, 0x06, 0xa3, 0x2f, 0xc0, 0xa8, 0x01, 0x21,0xc0, 0xa8, 0x01, 0x64};//TCP包信息(头+内容)char tcp_packet[] = {0x05, 0x99, 0xd6, 0x83, 0x8a, 0x4a, 0x40, 0x80, 0x42, 0xa8, 0x40, 0x65, 0x80, 0x18, 0x01, 0xfa,0x65, 0x15, 0x00, 0x00, 0x01, 0x01, 0x08, 0x0a, 0xf3, 0x31, 0xdc, 0x0f, 0xa4, 0xd3, 0x50, 0x8d,0x04, 0x01, 0x00, 0x94, 0x00, 0x36, 0x01, 0x00, 0xaa, 0x7c, 0x00, 0xc3, 0x00, 0x00, 0x00, 0x0a,0x0f, 0x33, 0x00, 0x27, 0x00, 0x73, 0x00, 0x6c, 0x00, 0x65, 0x00, 0x65, 0x00, 0x70, 0x00, 0x27,0x00, 0x20, 0x00, 0x69, 0x00, 0x73, 0x00, 0x20, 0x00, 0x6e, 0x00, 0x6f, 0x00, 0x74, 0x00, 0x20,0x00, 0x61, 0x00, 0x20, 0x00, 0x72, 0x00, 0x65, 0x00, 0x63, 0x00, 0x6f, 0x00, 0x67, 0x00, 0x6e,0x00, 0x69, 0x00, 0x7a, 0x00, 0x65, 0x00, 0x64, 0x00, 0x20, 0x00, 0x62, 0x00, 0x75, 0x00, 0x69,0x00, 0x6c, 0x00, 0x74, 0x00, 0x2d, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x20, 0x00, 0x66, 0x00, 0x75,0x00, 0x6e, 0x00, 0x63, 0x00, 0x74, 0x00, 0x69, 0x00, 0x6f, 0x00, 0x6e, 0x00, 0x20, 0x00, 0x6e,0x00, 0x61, 0x00, 0x6d, 0x00, 0x65, 0x00, 0x2e, 0x00, 0x04, 0x76, 0x00, 0x72, 0x00, 0x72, 0x00,0x70, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xfd, 0x02, 0x00, 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00,0x00, 0x00, 0x00, 0x00};// Calculate TCP checksumprintf("TCP old checksum: 0x%02X%02X\n", tcp_packet[16], tcp_packet[17]);tcp_packet[16] = tcp_packet[17] = 0; //先将checksum置空// uint16_t checksum = calculate_tcp_checksum(0x2101a8c0, 0x6401a8c0, tcp_packet, sizeof(tcp_packet)); uint16_t checksum = calculate_tcp_checksum((struct iphdr *)ip_head, tcp_packet, sizeof(tcp_packet)); printf("TCP new checksum: 0x%04X\n", htons(checksum)); //为了打印,需要将主机序换成网络序号(真实赋值給tcp头时不需要转换)return 0;
}

gcc -o tcp_checksum_test tcp_checksum_test.c 即可以生成相应可执行程序(本测试运行环境ubuntu)
2. 结果
在这里插入图片描述

http://www.yidumall.com/news/93574.html

相关文章:

  • 惠州做网站建设新东方烹饪学校
  • 就业网站建设总结网站优化外包公司
  • wordpress 新闻资讯seo网络推广招聘
  • 超级网站建设怎么去推广一个产品
  • 闵行工程建设网站win7优化大师官网
  • 口碑好的网站推广软件网络营销推广方案策划书
  • vs网站中的轮播怎么做线上线下整合营销方案
  • excel做网页放进网站怎么做一个网站
  • 网站开发配置状态统计样本新东方厨师学费价目表
  • JSP动态网站开发网站建立具体步骤是
  • 农村建设捐款网站网络营销五个特点
  • 网站开发相关的教材书籍关键词快速上首页排名
  • 秦皇岛网站建设系统推荐长沙百度网站优化
  • 哪个网站上可以做初中数学题会计培训班哪个机构比较好
  • 上海网站建设工作室武汉seo招聘网
  • 建设网站需求文档百度小说风云榜总榜
  • 网站与服务器的关系seo优化的主要内容
  • 推广效果最好的平台武汉seo排名公司
  • 做外贸做什么网站好seo外链技巧
  • 丹徒网站建设包括哪些怎样宣传自己的产品
  • 邵阳县网站建设公司沙河网站建设公司站长统计app官方网站
  • 广州市网站建设科技关键词优化的最佳方法
  • 什么是做网站seo技术服务外包
  • 成都市做网站公司网站模板平台资源
  • 推特登陆 网站建设云南网站建设百度
  • asp网站做seo网站快速优化排名推荐
  • 四川住房和城乡建设局网站百度智能云
  • 个人业务网上平台专业seo优化公司
  • 重庆网站建设选承越百度手机助手app下载
  • 青岛网站建设王道下拉??yahoo搜索引擎