QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2372|回复: 0
打印 上一主题 下一主题

黑基原创:路由器在你的电脑里

[复制链接]
字体大小: 正常 放大
韩冰        

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-11-19 10:41 |只看该作者 |倒序浏览
|招呼Ta 关注Ta

作者:匙  转自黑基bbs原创精华版

$ W h0 [: g. a. u! R

版权归黑客基地所有,转载请注明出处

9 j) z; C, t4 `! c2 o( `7 W8 } 1 i0 j" y0 y+ T2 s

看到标题,$ T9 e9 a: C3 Y( s 你不会认为这里说的是路由模拟软件吧?3 ^+ T. l3 m# V2 d! } w* ` 不啊,说的就是一个台普通终端。7 n- T: f( X" a 而且是单网卡的机器。

" {1 l( L* a6 J) W6 G1 P

也许你会说单网卡的机器做路有器不奇怪, # t( S/ n6 R1 A: o$ y* b7 c比如类似cisco单臂路由……

# m8 L T+ ]: f# y* e* a& a' n) K% }

但是这里说的就是一台再普通不过的机器,) S T) x0 q9 l- j9 F# t8 @ 甚至是刚刚安装好的win95。

# r, a% @/ J# i% f5 `( Q( f+ ?

……9 y: R8 R' |* q5 z' f7 D 其实是讲ip协议在单机中的基本运行, X% V3 H( i' U' t& y. z, s 本文比较片面,+ G# m1 P( {, ~7 P1 Z; w; a N 因为对ip协议在终端的运行机理没有深刻的理解。

! R5 h$ v/ H6 k: S" a7 m+ w7 Y

ip协议在电脑上安装后, # E$ b9 I% O/ R! G就变成了你上网的基石,, S' p2 H9 t3 C" b3 f" K 每一步连接,# Z: Q# R: w( B( K/ y 每一步探索, , C3 u a! z0 n5 H2 m都由ip协议群在幕后安成。

% a. Z( k5 h8 o) c L$ q

ip协议的安装是要和网络接口(NETWORK INTERFACE)绑定的,8 s. F, H1 M: `& P+ B# \ 也就是说要和网络适配器搭配着安装。5 J( c6 ~" [ z! T 比如:MODEM 网卡、 虚拟的网络适配器、 VPN网络适配器、 拨号网络适配器、 等。

0 a# ^- S, I) {) J

IP协议安装后,& Z' _" x1 f: }$ m2 U- y 会为网络连接创建堆栈,4 g' r/ D9 D2 n8 X 为自己创建一个127.0.0.x的本地回路, & j- j! v; r3 }6 o; d6 Y自动获取或者等待用户手工设定一个IP地址,1 Q9 B' a6 Y! R' x# X 向网络公布自己并探索相邻的协议载体, + B E$ O9 [) n0 N# Q% A) w/ l! {侦听来自网络的数据包, $ A6 n5 o3 V! r& |: u* T% y" t, ?; V按照IP属性设定的DHCP,DNS,GATEWAY等网络规则通讯。

7 H, d0 ^+ w- y2 r' ~( [

INTERNET中不同网段无法直接互访,# Y9 q O' k! l$ N* ] 需要借助于路由器包转发功能解决, : K; }2 S" ]/ r( f1 N1 b# O规则的根据是一个自动或者手工编制路由信息表。

6 ^9 v# V( z4 g: z0 k6 g" p2 m

其实在单机内部也是存在包转发过程的,; x! k( F) O" A! t( |% H, r0 c ROUTE命令可以为我们展示一张路由信息表:

4 Z& x+ I, a Q- E

C:\WINNT\system32>ROUTE PRINT * _: i! s9 K2 R=========================================================================== 2 n/ _- C, Q+ h# R& oInterface List 9 t8 n4 B. y' y: X0x1 ........................... MS TCP Loopback interface) x2 C( N. @# N$ y. i M 0x4000003 ...00 XX XX a8 XX c7 ...... Intel(R) PRO Adapter3 t4 i1 [. d' T9 L4 i! J/ A =========================================================================== 2 C; ~. v1 x/ g. T; e5 i=========================================================================== 5 q3 w4 W- q6 g2 q lActive Routes: ' W7 G# y6 l/ N# h3 O2 jNetwork Destination Netmask Gateway Interface Metric $ P! D3 ?( B: P* t 0.0.0.0 0.0.0.0 192.168.0.1 192.168.0.111 1 1 v" t x# v# J! R! ] 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1( p; r; H1 O2 s+ b1 B; @ S 192.168.0.0 255.255.255.0 192.168.0.111 192.168.0.111 1 8 N: @# e* `, A. q, N 192.168.0.111 255.255.255.255 127.0.0.1 127.0.0.1 1; P% E' ^4 N# W. G9 ^! ~2 j W 192.168.0.255 255.255.255.255 192.168.0.111 192.168.0.111 19 D" h9 e' } e 224.0.0.0 224.0.0.0 192.168.0.111 192.168.0.111 1 2 r* ^. Y0 o; p 255.255.255.255 255.255.255.255 192.168.0.111 192.168.0.111 1 : w1 Y# u- H0 m6 VDefault Gateway: 192.168.0.1( }8 W' r! b# a( m! w0 S: n =========================================================================== 8 i2 Y5 Q2 j# O% n) xPersistent Routes: 8 w ]( u( c. g0 |4 H' U7 \1 w& T None

5 f. I# }% ]; I

这张表告诉我们单机内部IP协议是怎么样维护着不同网络段数据包的转发,

( G5 Y2 k- ~, k1 K: H! z

也许你会认为电脑pc应该只存在于一个网络段, 5 O9 @% v5 g3 ^' `* V宏观的看是这样的, 1 e& @) c: L3 y. b这里说的却是从协议内部微观角度查看。

+ U& m' _/ H4 `( E3 q9 @

在内环境中,0 X7 x J( V$ ~2 t 电脑工作相关的网段是:

% i0 ?: q8 p9 t

1: 255.255.255.255 255.255.255.255 192.168.0.111 192.168.0.111 1/ C: Q$ h& Z* c 面向网络接口的广播,不论你是什么网络段,LAN还是INTERNET,都存在这个网络段。他是这台电脑与身边IP

& g+ O+ s, P' |4 f" X# ? I

环境通讯的基础。

- V6 o, b: H# a7 C. R- X! V

2: 224.0.0.0 224.0.0.0 192.168.0.111 192.168.0.111 1 * {! h6 c# o# }& ~& I多播地址(multicast)同样是探知网络。多播地址利用不同的多播地址所代表的协议或者设备 有针对性的对网

0 _/ g' Z4 s: [% B( i7 I2 M# U. ?; I

络环境进行发现。

% F+ |" I# R% U, v: m7 o4 }

3: 192.168.0.255 255.255.255.255 192.168.0.111 192.168.0.111 1 . N5 T! t$ h; I3 f, P% h2 h$ g本计算机所在网络的广播地址。他的存在是与同一网段的机器进行通讯的基础。

8 K7 z9 h3 p0 {% Z/ c

4: 192.168.0.111 255.255.255.255 127.0.0.1 127.0.0.1 1 4 P5 V5 ?9 R' n1 T6 r E/ V 本计算机自身IP访问自身IP的环路。这个路由定义了如果这台计算机访问自己的IP不要经过别的网关,直接通

2 | E) _& ~7 a0 p

过127.0.0.1本地回路IP访问自己。相当于自己是自己的网关。

( O* n0 s5 R% @: s- ]

5: 192.168.0.0 255.255.255.0 192.168.0.111 192.168.0.111 1 ! s1 K5 X, A8 X1 j; e本计算机所在的网络地址,代表了一个网段。

' @$ A4 l- H) s4 z8 {

6: 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 13 P) q! F f- z3 A7 m1 j0 n$ g IP协议规定的本地回路的固定地址。只要安装了IP协议,就可以用127.X.X.X访问自己。为了数值的统一,都

( X! \. t6 _- d: n6 J* ~& `

用127.0.0.1代表自己。

5 G; e+ i- c9 J; S( y ~4 f

7: 0.0.0.0 0.0.0.0 192.168.0.1 192.168.0.111 1 3 O; r8 ]0 m' |7 \* U9 N1 F这个和一般路由器配置的默认路由是一个含义。代表了面向应用的,所有目标不是多播,广播,本地回路,本

* _% w* L6 o! _( @# g5 i

地IP的数据包,全部通过指定的网关进行转发访问。

/ v, V& C/ T8 y% \

5 H. j. E2 D% D路由表在路由器中的配置有很大学问,0 q5 I* C4 w" a/ @ 很重要的就是表项目的顺序。 3 G' x$ n# |2 X9 W& f: N3 q' y一个顺序合理的路由表代表了性能、安全、高效。

- S$ H' C, [$ b8 S+ g( ?8 C7 i3 v

本地计算机中的静态路由表," W6 ?# Z- [4 b: ]+ ]1 `& r 如上面所述的表, : C6 L I5 t& G9 m/ [9 w; a# N也同样采用了选择顺序,) ^! M1 O$ N. w& l0 Y& L 从下到上。

+ A4 \6 N1 B9 }

本地计算机的环路路由是本地静态路由表的特色,' i; |! U9 [- [5 H# U( [ 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 3 D! W8 R% {1 K& h192.168.0.111 255.255.255.255 127.0.0.1 127.0.0.1 10 A, i9 P" r, | 这个条路由信息可以:& z1 k3 v/ m+ A/ A* b( x: f 1: 有帮助的。( t1 D7 j# |+ ^ 可以帮助没有真实网络环境的人,测试本地网络应用程序。用得最多的是本机构造IIS、网络程序编制等。! t& }; i6 ]4 H7 P* C7 a 2: 安全的。 ) O9 _' I- Z. v, W5 j4 q- b1 | 比如计算机在启动过程中运行的很多虚拟子程序,服务程序,防火墙,系统进程等,都要访问甚至和连接本机

& x" l# A; \6 \% w

其它程序端口。有了本地回路这种路由,就不用通过网关,很大程度避免了系统信息外漏。; m) B: N7 I3 Q5 e2 b5 t 3: 高效的。0 T# a/ f5 C1 ?$ I. ^( l- S9 j 减少网络中的流量,并且直接采用本地环路,减少网络质量差的错误等待时间。

0 K8 K! B; G4 f1 }! G& ^ S- b

用户完全可以自己增加和修改路由表, ( g+ `3 A- I9 B: r比如一台电脑和其它电脑连接成为网络。 . o/ g- g4 s; _% c3 m- g但是他们的网络ip不在同一个网络段中,' Q0 [# b8 u F0 Y$ o6 v 可以通过修改静态路由表," g4 y+ F5 i& R. h/ X. \ 达到网络相通。

6 i$ G) `4 @3 f1 [* D( \, v6 x

这里要说的是, / u* ]$ F. J: |8 R' A: q2 M6 r' B有网友问怎么修改静态路由表和不同网段通讯, 8 v) J' `* \+ h, u5 y! Y网上的我见过最多的回答是: - I9 _2 M# E4 U' O1 g4 h. X“用 route add xxx.xxx.xxx.xxx mask 255.xxx.xxx.xxx xxx.xxx.xxx.xxx metric x 增加一条静态路由就可

9 f- y' ~( t. Q8 G# E# k

以了” " m! ~# r. t$ V2 x9 U0 S h但是实际上要增加两条。 % K ]# [2 d0 j( s8 R# M网络协议服务的对象就是多方的, ; i( X7 E. k$ [+ a只有一台机器知道一条规则是不够的啊,! d* S* A3 r, `! u4 p3 Z& [) } 所以两台或更多机器上面同时增加到对方的静态路由信息,! D. Z' ]3 }- a 双方都知道怎么连接,* z* E- F( K: q: p8 X4 e9 J/ n 才能建立连接。

U- @) f' h& p& v8 ~

本文由于我对tcp/ip的理解还很浅薄, / `) w. D7 i* S$ N: m+ L5 a& L有不对的地方," o+ B5 Y2 d- u, J8 M0 Q 还请高手赐教。

5 d/ }- C G8 P; b2 }( P) E

附:/ f6 J9 M) c2 O: w5 i( m( J. M route命令3 j0 n2 J$ U4 j- z1 s, f ROUTE [-f] [-p] [command [destination] [MASK netmask] [gateway] [METRIC metric] [IF interface]

zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-8-25 00:55 , Processed in 0.520872 second(s), 52 queries .

回顶部