1

出于某种原因,我需要更改 linux 协议表。例如,我想 linux 将协议 1 识别为 ipv4(协议 4)或将协议 47 识别为 l2tp 。有谁知道如何在 linux 内核中或最好在 /sys 文件夹中更改它,所以我的客户端将协议 tcp 作为 icmp 协议发送,而在另一端它接收 icmp 并将其识别为 tcp。谢谢,

4

1 回答 1

2

协议编号在 中定义include/uapi/linux/in.h。在更改那里的东西时要非常小心,您将使您的操作系统与几乎所有其他东西不兼容。

编辑:当心那些公然忽略值IPPROTO_TCP以支持硬编码值的驱动程序......我刚刚在以下位置找到了这个“宝石” drivers/infiniband/hw/nes/nes_cm.c

451     iph->protocol = 0x06;   /* IPPROTO_TCP */
于 2013-03-09T18:53:24.203 回答