当前位置:首页 » 操作系统 » IP源码人

IP源码人

发布时间: 2022-05-17 18:28:43

‘壹’ (急)IP协议源代码(C++)中的转发函数谁能帮忙解释一下

PERF_START 转发开始,初始化。

ip_forward() 转发函数, 转发一个数据包。

ip_route() 找通向目的地的路线。
(struct ip_addr *)&(iphdr->dest 目的地转成ip_addr结构。如果 找到路线,送返 结构 netif,否则 送返 NULL。
if((ip_route ...NULL){} 如果送返 NULL,也就是没找到路线,则做 {...}

找到路线, 但是 if(netif == inp) ,表示同一个数据包,已到达,不必转发。

IPH_TTL_SET(iphdr, IPH_TTL(iphdr) - 1); 如果ttl == 0,为防止数据包不断在 IP 互联网络上永不终止地循环,减小 数据包 生存时间TTL 1,icmp..是否执行封包回显应答。

IPH_CHKSUM_SET 更新 IP checksum 检查,根据条件决定是否+1。

DEBUGF -- 查错时输出的信息

#ifdef IP_STATS ... #endif
如果定义了IP_STATS (IP 开始) 则...

PERF_STOP() 终止 转发

‘贰’ 优化一段利用php获取真实IP地址源码

functionGetIP(){
if(getenv("HTTP_CLIENT_IP")&&strcasecmp(getenv("HTTP_CLIENT_IP"),"unknown"))
$ip=getenv("HTTP_CLIENT_IP");
elseif(getenv("HTTP_X_FORWARDED_FOR")&&strcasecmp(getenv("HTTP_X_FORWARDED_FOR"),"unknown"))
$ip=getenv("HTTP_X_FORWARDED_FOR");
elseif(getenv("REMOTE_ADDR")&&strcasecmp(getenv("REMOTE_ADDR"),"unknown"))
$ip=getenv("REMOTE_ADDR");
elseif(isset($_SERVER['REMOTE_ADDR'])&&$_SERVER['REMOTE_ADDR']&&strcasecmp($_SERVER['REMOTE_ADDR'],"unknown"))
$ip=$_SERVER['REMOTE_ADDR'];
else
$ip="unknown";
return($ip);
}

$url='http://(淘宝IP库)/service/getIpInfo.php?ip='.GetIP();

‘叁’ tcp/ip 源码剖析 怎么样

先认清你自己学习的出发点吧, 是应用层面方向还是内核协议栈

应用层面,我不是很了解

内核协议栈个人学习流程大概如下:

首先看TCP/IP卷2,理解2层(MAC地址), 3层(IP, 路由),4层(TCP,UDP,ICMP,IGMP)
这里主要理解的框架,先把网络协议层从下到上(或从上到下)理一遍

然后,建议你看<深入理解Linux网络技术内幕> 能看英文版最好

按照那本书的目录,找找网上的资料
稍微理解下sk_buff和net_device这两个结构
(不要想着去看懂, 要完全看懂这个结构,会花费比较多的时间,而且还要结合网络子系统中的各个应用)

然后,直接把整本书完整看一遍,不要刻意去扣细节,第1遍看这本书只是为了把网络子系统的内部框架建立起来

看完1遍,肯定有自己的见解了,然后,再根据自己需要的,去扣代码细节

代码方面,建议不要找最新的代码,我看这本书选的2.6.16的,最新代码的话,和这本书对应不上,不便于理解基础

<深入理解Linux网络技术内幕> 这本书,除了没有TCP/UDP的详细解说,至少我没发现比他还好的书

‘肆’ 易语言代理IP源码

精易模块,,网页-访问 有代理,可设置代理为列表框的内容,时钟可设置延迟然后运行网页访问

‘伍’ asp.net如何获取客户端真实ip(源码)

IPHostEntry
ip=Dns.GetHostByName(textBox1.Text);
//textBox1.Text是客户端主机名
IPAddress[]
ipp=ip.AddressList;
for(int
i=0;i<=ipp.Length-1;i++)
{
listBox1.Items.Add(ipp[i].ToString());
}
to:客户端系统时间?
监听一下13号端口
:)
accSock=sock.Accept();//用于接收客户端的连接请求,返回套接字对象
if(accSock.Connected)
{
IPAddress
ipAddress=IPAddress.Parse(((IPEndPoint)accSock.RemoteEndPoint).Address.ToString());
IPAddress
Port=IPAddress.Parse(((IPEndPoint)accSock.RemoteEndPoint).Port.ToString());
//获取客户端的IP地址
湖北新蓝海是一家专注于网络营销
网络推广的领头企业
,已为武汉健民、华工激光、江西仁和等多家知名企业提供网络营销外包服务。详情请到各大搜索引擎中搜索“湖北新蓝海”

‘陆’ 求一个别人打开就可以获取到他的IP的网站源码,最好是带后台

如何简单的网页都可以,网页里面放置网络 谷歌这些统计代码就可以了,就可以统计有多少IP访问了

‘柒’ 求网站显ip源码

你网络一下:

显示来访IP地址免费代码很多免费调用的接口非常方便

但是网络知道的部分管理实在脑残缺钙,只要发了不认识的代码就以广告为由屏蔽

甚至哪天心情不爽,失恋,没吃饱,都会封贴,禁止帮人...

所以建议你自己搜一下刚才的关键字,不便之处还望谅解...望采纳

或许一会这个回复也没了...揭短总是容易引起他们不爽...

‘捌’ 谁有IP欺骗的源代码

告诉你一个简单方法,用跳板,然后再用代理IP,这样对方很难知道你的真实IP。至于源码,我想还没有人能写出吧!

‘玖’ 显示本机IP源代码

用vc8可以直接编译

#define WIN32_LEAN_AND_MEAN

#include <windows.h>
#include <winsock2.h>
#include <iostream>

#pragma comment(lib,"ws2_32.lib")

using namespace std;

int doit(int, char **)
{
char ac[80];
if (gethostname(ac, sizeof(ac)) == SOCKET_ERROR) {
cerr << "Error " << WSAGetLastError() <<
" when getting local host name." << endl;
return 1;
}
cout << "Host name is " << ac << "." << endl;

struct hostent *phe = gethostbyname(ac);
if (phe == 0) {
cerr << "Yow! Bad host lookup." << endl;
return 1;
}

for (int i = 0; phe->h_addr_list[i] != 0; ++i) {
struct in_addr addr;
memcpy(&addr, phe->h_addr_list[i], sizeof(struct in_addr));
cout << "Address " << i << ": " << inet_ntoa(addr) << endl;
}

return 0;
}

int main(int argc, char *argv[])
{
WSAData wsaData;
if (WSAStartup(MAKEWORD(1, 1), &wsaData) != 0) {
return 255;
}

int retval = doit(argc, argv);

WSACleanup();

return retval;
}

热点内容
c语言的工作 发布:2025-01-15 06:50:50 浏览:520
口语交际访问 发布:2025-01-15 06:44:13 浏览:327
编程少儿学习 发布:2025-01-15 06:39:03 浏览:502
服务器搭建怎么设置 发布:2025-01-15 06:39:01 浏览:149
格鲁尔要什么配置 发布:2025-01-15 06:26:56 浏览:855
linux下安装jdk 发布:2025-01-15 06:03:05 浏览:545
服务器拷数据到电脑 发布:2025-01-15 05:58:19 浏览:481
android的单例模式 发布:2025-01-15 05:50:55 浏览:928
aes256在线加密工具 发布:2025-01-15 05:36:25 浏览:223
朋友圈的缓存在哪里 发布:2025-01-15 05:35:01 浏览:509