当前位置: 技术问答>linux和unix
请问在netfilter的forward点上怎么将原来从eth0发送的数据包转向由eth1发送啊?
来源: 互联网 发布时间:2015-10-25
本文导语: 请问在netfilter的forward点上怎么将原来从eth0发送的数据包转向由eth1发送啊? 我写了个模块,模块初始化时申请了struct rtable stRTH; struct hh_cache stHH;两个结构体,并将eth1的相应内容填如两个结构体中,然后将sk_buff的...
请问在netfilter的forward点上怎么将原来从eth0发送的数据包转向由eth1发送啊?
我写了个模块,模块初始化时申请了struct rtable stRTH;
struct hh_cache stHH;两个结构体,并将eth1的相应内容填如两个结构体中,然后将sk_buff的相应指针指向这两个结构体。这样做理论上是可以实现的,可是运行的时候提示个错误
count.o: unresolved symbol ip_forward
count.o: unresolved symbol ip_output
出错的地方是
stRTH.u.dst.input = ip_forward;
stRTH.u.dst.output = ip_output;
请问这样的问题怎么解决啊?
或者 哪位大侠还有更好的办法啊?
我写了个模块,模块初始化时申请了struct rtable stRTH;
struct hh_cache stHH;两个结构体,并将eth1的相应内容填如两个结构体中,然后将sk_buff的相应指针指向这两个结构体。这样做理论上是可以实现的,可是运行的时候提示个错误
count.o: unresolved symbol ip_forward
count.o: unresolved symbol ip_output
出错的地方是
stRTH.u.dst.input = ip_forward;
stRTH.u.dst.output = ip_output;
请问这样的问题怎么解决啊?
或者 哪位大侠还有更好的办法啊?
|
skb->data = (unsigned char *)skb->mac.ethernet;
skb->len += ETH_HLEN;
把skb的数据头指向mac头。
skb->len += ETH_HLEN;
把skb的数据头指向mac头。