LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: lingbos

谁知道,电信是怎么发现并机上网的???

[复制链接]
发表于 2005-2-1 12:06:54 | 显示全部楼层
把那份合同扫描上来吧。
回复 支持 反对

使用道具 举报

发表于 2005-2-1 22:24:45 | 显示全部楼层
最近,接到××出版社的一封律师信:
××公民:
你购买的 《××××》 存在 N 个人传阅的现象。请停止借阅,并收回书籍。或建议其他人购买本书!否则,对传阅行为依法追究法律责任!

:-0

我在 LinuxQuestion 上问了一下,应该和 MAC 地址无关,因为是使用拨号,用 ppp 协议,所以没有 MAC 地址。用 ifconfig ppp0 可以看到,没有网卡地址。

我用 snort 嗅探:
# /opt/snort/bin/snort -evd -l ./snort3/ -i ppp0
在报文中确实没有看到物理地址。

还有,你可以说,我还有 N 台笔记本电脑,到不了就去告它。我想,这是侵犯别人的自由,简直是违宪的行为。
回复 支持 反对

使用道具 举报

发表于 2005-2-2 10:50:06 | 显示全部楼层
电信是根据IP数据包中的TTL值来判断是否有多台主机通过NAT路由上网.
而ADSL猫虽然有NAT路由功能,但是出去的TTL值却不能被改变,因此,即使内网的所由机器都用相同
的操作系统(TTL值都一样),至少路由器的TTL值总是不一样的(经过一个路由器TTL值就自动减1),电信凭从你那发过去的TTL值每次是否相同来判断你是否有多台机器通过NAT上网.

linux内建的nat功能提供了修改TTL值的功能,让从路由器出去的每一个数据包都具有相同的TTL值.

这个功能可以通过iptables设置 mangle表的TTL目标来完成.

用一台最烂的p133+32M装上linux当NAT路由器设置mangle表规则让每个通过路由器的数据包都具有相同的TTL就可以了.

另外 和MAC地址无关.
回复 支持 反对

使用道具 举报

发表于 2005-2-2 21:23:16 | 显示全部楼层
Post by sypdz
上了ip层,做nat的时候,已经没有mac的概念了



怎么会没有mac
以太网都是标准格式
64-1518个字节

不管是那一层的数据,最后都要到封装物理层,必须要遵守各层的封装
各层都有自己的头
比如:
应用层头
tcp头
ip头
以太网头,ppp头,帧中继头等等
物理层
mac是在各网段中不断变化的
回复 支持 反对

使用道具 举报

发表于 2005-2-2 21:25:52 | 显示全部楼层
如果你那里的电信允许多台主机上网的话,那么从电信端设备上看从你那里上来的mac有多个
回复 支持 反对

使用道具 举报

发表于 2005-2-2 21:48:34 | 显示全部楼层
可能各位对路由和pppoe不太清楚
我简单说几句
首先路由器工作在3层,路由的最主要的功能就是确定最佳路径,转发不同网段的数据包
假设:

A ----ROUTER-----B

a发往b的数据包,如何到达的,手下A把数据包发往网关也就是router(在此省略Arp请求)
路由器接到a的数据包以后,拆开2层包头MAC层,然后查找ip目的地址,如果在路由表中
有到达B的路由,那么会在连接B的接口上发arp请求,得到b的mac地址,然后路由器会把这个
进行重新封装,ttl减1,用连接b的接口的mac封装进以太网的SA,用B的mac做DA,重新计算
crc,然后发往B.这是简单的流程,现代路由器的技术新,比如用了快速交换,优化交换,cef交换,
mls交换等等工作方式略又不同.所以说没有到了3层没有mac地址是不对的.不管包
怎么传输都会有各层的头部.

pppoe呢,是名字上看是ppp oer ethernet,就是在以太网上的ppp封装,在标准ppp报文前面加上以太网的包头.
也就是说2层还是用以太网的mac来封装,你说看不到,是因为你看的是ppp0,数据还要经过你的以太网来再次封装,所以你网卡的mac还会封装到包中.pppoe可以通过简单2层设备连到远端,并可以共享连接多个主机.可以利用
ppp的特性来进行单个用户的计费,控制等.
pppoe的连接步骤有简单的几个步骤:

a(host)----b(server)
1.padi
2.pado
3.padr
4.pads

上面是主机和bas的连接请求,叫做disco阶段用来广播查找bas的.
找到以后进入熟悉的ppp的lcp和ncp阶段,和普通拨号一样了.

敲的我累死了
回复 支持 反对

使用道具 举报

发表于 2005-2-2 23:01:22 | 显示全部楼层
受教了..比如说别人发过来数据包要如何才可以看到mac?
回复 支持 反对

使用道具 举报

发表于 2005-2-2 23:19:59 | 显示全部楼层
同一网段的话
用arp命令就可以看
通过路由器的话,你要看的话,那肯定是路由器端口的mac,绝对不会是源端主机的mac
抓包看
回复 支持 反对

使用道具 举报

发表于 2005-2-3 08:51:44 | 显示全部楼层
Post by 小宝
怎么会没有mac
以太网都是标准格式
64-1518个字节

不管是那一层的数据,最后都要到封装物理层,必须要遵守各层的封装
各层都有自己的头
比如:
应用层头
tcp头
ip头
以太网头,ppp头,帧中继头等等
物理层
mac是在各网段中不断变化的

我说的是ip包...不是说链路层的包...麻烦搞清楚...
在ip层抓包能抓到mac,还真是服了你了...
回复 支持 反对

使用道具 举报

发表于 2005-2-3 08:54:22 | 显示全部楼层
Post by gucuiwen
电信是根据IP数据包中的TTL值来判断是否有多台主机通过NAT路由上网.
而ADSL猫虽然有NAT路由功能,但是出去的TTL值却不能被改变,因此,即使内网的所由机器都用相同
的操作系统(TTL值都一样),至少路由器的TTL值总是不一样的(经过一个路由器TTL值就自动减1),电信凭从你那发过去的TTL值每次是否相同来判断你是否有多台机器通过NAT上网.

linux内建的nat功能提供了修改TTL值的功能,让从路由器出去的每一个数据包都具有相同的TTL值.

这个功能可以通过iptables设置 mangle表的TTL目标来完成.

用一台最烂的p133+32M装上linux当NAT路由器设置mangle表规则让每个通过路由器的数据包都具有相同的TTL就可以了.

另外 和MAC地址无关.

en ...通过ttl来判断我觉得不行,每次路由可能都会不同,不同的包可能经过不同的路线到达电信,这样ttl可能就不同。
我觉得可能是通过nat通过的端口来判断的,当然,只是可能。
通过nat以后,源端口都相当的高,都在万以上,而单机上网,则从1024以上随机抽取...
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表