[CCNA图文笔记]-15-RIPv2协议详解

0×1.RIPv2增强特性
RIPv2与RIPv1的相同点:
也用跳数作为度量值,最大值为15;也是距离矢量路由协议;也容易产生路由环路,使用最大跳计数,水平分隔,触发更新,路由中毒和抑制定时器来防止路由环路;也是周期更新,默认每30秒发送一次路由更新;
RIPv2的增强特性:
在路由更新中携带有子网掩码的路由选择信息,因此支持VLSM和CIDR;提供身份验证功能,支持明文和MD5验证;在路由更新信息中包含下一跳路由器的IP地址;使用外部标记;使用组播地址224.0.0.9代替RIPv1的广播更新;可以关闭自动汇总,并支持手动汇总;
0×2.RIPv2基本配置
1

Router(config)#router
rip

2

/使用RIPv2,如果不使用这条命令默认是使用RIPv1/

3

Router(config-router)#
version
2

4

/和RIPv1相同,都是宣告主类网络号/

5

Router(config-router)#
network
主类网络号

a.RIPv2支持VLSM实例
在上一篇关于RIPv1的缺陷中有涉及到下面这张拓扑的配置,现在使用RIPv2去配置,看看结果会有何不同:


Cisco-CCNA-RIPv2-1
Cisco-CCNA-RIPv2-1

R1配置:
01

R1(config)#
int
s 0/0

02

R1(config-if)#
ip
add
192.168.1.65 255.255.255.252

03

R1(config-if)#
no
shut

04

R1(config-if)#
int
lo0

05

R1(config-if)#
ip
add
192.168.1.1 255.255.255.192

06

R1(config-if)#
no
shut

07

R1(config-if)#router
rip

08

R1(config-router)#
version
2

09

R1(config-router)#
net
192.168.1.0

10

R1(config-router)#
end

R2配置:
01

R2(config)#
int
s 0/1

02

R2(config-if)#
ip
add
192.168.1.66 255.255.255.252

03

R2(config-if)#
no
shut

04

R2(config-if)#
int
lo
0

05

R2(config-if)#
ip
add
192.168.1.129 255.255.255.192

06

R2(config-if)#
no
shut

07

R2(config-if)#router
rip

08

R2(config-router)#
ver
2

09

R2(config-router)#
net
192.168.1.0

10

R2(config-router)#
end

在R1上查看路由表并测试连通性:
01

/可以看到R1支持VLSM/

02

R1#
show
ip
route

03

04

192.168.1.0/24 is variably subnetted, 3 subnets, 2 masks

05

C 192.168.1.64/30 is directly connected, Serial0/0

06

C 192.168.1.0/26 is directly connected, Loopback0

07

R 192.168.1.128/26 [120/1] via 192.168.1.66, 00:00:01, Serial0/0

08

09

/*
ping
R2的回环接口,成功*/

10

R1#
ping
192.168.1.129

11

!!!!!

通过Debug调试RIPv2查看输出:
01

R1#debug
ip
rip

02

RIP protocol debugging is on

03

R1#

04

*Mar 1 00:22:31.687: RIP: sending v2 update to 224.0.0.9 via Serial0/0 (192.168.1.65)

05

*Mar 1 00:22:31.687: RIP: build update entries

06

*Mar 1 00:22:31.687: 192.168.1.0/26 via 0.0.0.0, metric 1, tag 0

07

R1#

08

*Mar 1 00:22:52.391: RIP: received v2 update from 192.168.1.66 on Serial0/0

09

*Mar 1 00:22:52.391: 192.168.1.128/26 via 0.0.0.0 in 1 hops

10

R1#u all

11

All possible debugging has been turned off

12

R1#

13

14

/*

15

  • 从输出可以看到,发送和接收的版本均为RIPv2(sending v2、received v2)

16

  • 发送更新分组使用的是组播地址
    "update to 224.0.0.9"

17

  • 发送和接收的更新分组中携带了子网掩码长度
    "/26"

18

  • 发送的更新分组中使用了路由标记
    "tag 0"

19

*/

b.RIPv2支持CIDR实例
如下图所示,假设R2上面有多个192.168.*.0/24网络,可以在RIPv2中以CIDR的方式把路由宣告出去;


Cisco-CCNA-RIPv2-2
Cisco-CCNA-RIPv2-2

R1配置:
1

R1(config)#
int
s 0/0

2

R1(config-if)#
ip
add
12.1.1.1 255.255.255.0

3

R1(config-if)#
no
shut

4

R1(config-if)#router
rip

5

R1(config-router)#
ver
2

6

R1(config-router)#
net
12.0.0.0

7

R1(config-router)#
end

R2配置:
01

/R2上配置了4个回环接口/

02

R2(config)#
int
s 0/1

03

R2(config-if)#
ip
add
12.1.1.2 255.255.255.0

04

R2(config-if)#
no
shut

05

R2(config-if)#
int
lo
0

06

R2(config-if)#
ip
add
192.168.1.1 255.255.255.0

07

R2(config-if)#
no
shut

08

R2(config-if)#
int
lo
1

09

R2(config-if)#
ip
add
192.168.2.1 255.255.255.0

10

R2(config-if)#
no
shut

11

R2(config-if)#
int
lo
2

12

R2(config-if)#
ip
add
192.168.3.1 255.255.255.0

13

R2(config-if)#
no
shut

14

R2(config-if)#
int
lo
3

15

R2(config-if)#
ip
add
192.168.4.1 255.255.255.0

16

R2(config-if)#
no
shut

17

R2(config-if)#
exit

18

/生成一条静态路由192.168.0.0/16/

19

R2(config)#
ip
route
192.168.0.0 255.255.0.0 null 0

20

R2(config)#router
rip

21

R2(config-router)#
ver
2

22

R2(config-router)#
net
12.0.0.0

23

/将静态路由重发布出去/

24

R2(config-router)#
redistribute
static

25

R2(config)#
end

这个时候在R1上查看路由表,就能看到R2重发布过来的超网路由:
1

/如果使用的是RIPv1,就不会看到192.168.0.0/16这条超网信息,因为RIPv2不支持CIDR/

2

R1#
show
ip
route

3

4

12.0.0.0/24 is subnetted, 1 subnets

5

C 12.1.1.0 is directly connected, Serial0/0

6

R 192.168.0.0/16 [120/1] via 12.1.1.2, 00:00:14, Serial0/0

c.RIPv2手工汇总实例
RIPv1和RIPv2都会在主类网络的边界汇总,区别在于RIPv2的自动汇总可以关闭,并支持手工汇总。
利用RIPv2完成下面配置,在关闭自动汇总前和RIPv1路由表结果一样,关闭自动汇总后RIPv2就能很好的支持不连续的子网了:


Cisco-CCNA-RIPv2-3
Cisco-CCNA-RIPv2-3

R1配置:
01

R1(config)#
int
s 0/0

02

R1(config-if)#
ip
add
12.1.1.1 255.255.255.0

03

R1(config-if)#
no
shut

04

R1(config-if)#
int
lo
0

05

R1(config-if)#
ip
add
192.168.1.1 255.255.255.128

06

R1(config-if)#
no
shut

07

R1(config-if)#router
rip

08

R1(config-router)#
ver
2 /使用RIPv2/

09

R1(config-router)#
no
auto-summary
/关闭自动汇总/

10

R1(config-router)#
net
192.168.1.0

11

R1(config-router)#
net
12.0.0.0

12

R1(config-router)#
end

R2配置:
01

R2(config)#
int
s 0/1

02

R2(config-if)#
ip
add
12.1.1.2 255.255.255.0

03

R2(config-if)#
no
shut

04

R2(config-if)#
int
s 0/0

05

R2(config-if)#
ip
add
23.1.1.2 255.255.255.0

06

R2(config-if)#
no
shut

07

R2(config-if)#router
rip

08

R2(config-router)#
ver
2

09

R2(config-router)#
no
auto-summary

10

R2(config-router)#
net
12.0.0.0

11

R2(config-router)#
net
23.0.0.0

12

R2(config-router)#
end

R3配置:
01

R3(config)#
int
s 0/1

02

R3(config-if)#
ip
add
23.1.1.3 255.255.255.0

03

R3(config-if)#
no
shut

04

R3(config-if)#
int
lo
0

05

R3(config-if)#
ip
add
192.168.1.129 255.255.255.128

06

R3(config-if)#
no
shut

07

R3(config-if)#router
rip

08

R3(config-router)#
ver
2

09

R3(config-router)#
no
auto

10

R3(config-router)#
net
23.0.0.0

11

R3(config-router)#
net
192.168.1.0

12

R3(config-router)#
end

配置完成后在R1/R2/R3上分别查看路由表:
01

R1#
show
ip
route

02

03

23.0.0.0/24 is subnetted, 1 subnets

04

R 23.1.1.0 [120/1] via 12.1.1.2, 00:00:11, Serial0/0

05

12.0.0.0/24 is subnetted, 1 subnets

06

C 12.1.1.0 is directly connected, Serial0/0

07

192.168.1.0/25 is subnetted, 2 subnets

08

C 192.168.1.0 is directly connected, Loopback0

09

R 192.168.1.128 [120/2] via 12.1.1.2, 00:00:11, Serial0/0

10

11

R2#
show
ip
route

12

13

23.0.0.0/24 is subnetted, 1 subnets

14

C 23.1.1.0 is directly connected, Serial0/0

15

12.0.0.0/24 is subnetted, 1 subnets

16

C 12.1.1.0 is directly connected, Serial0/1

17

192.168.1.0/25 is subnetted, 2 subnets

18

R 192.168.1.0 [120/1] via 12.1.1.1, 00:00:15, Serial0/1

19

R 192.168.1.128 [120/1] via 23.1.1.3, 00:00:10, Serial0/0

20

21

R3#
show
ip
route

22

23

23.0.0.0/24 is subnetted, 1 subnets

24

C 23.1.1.0 is directly connected, Serial0/1

25

12.0.0.0/24 is subnetted, 1 subnets

26

R 12.1.1.0 [120/1] via 23.1.1.2, 00:00:26, Serial0/1

27

192.168.1.0/25 is subnetted, 2 subnets

28

R 192.168.1.0 [120/2] via 23.1.1.2, 00:00:26, Serial0/1

29

C 192.168.1.128 is directly connected, Loopback0

从三个路由的路由表输出,进一步证实了RIPv2关闭总汇后能够支持不连续的子网。但同时也带来一个问题,路由表变大了,如果R1上面有多个接口属于不同子网,那么R1将向其他路由通告这些接口所处的子网,下面这个实例将演示如何进行手动汇总来减小路由表的大小,拓扑如下图所示:


Cisco-CCNA-RIPv2-4
Cisco-CCNA-RIPv2-4

首先不使用手动汇总,配置各路由:
R1配置:
01

R1(config)#
int
s 0/0

02

R1(config-if)#
ip
add
12.1.1.1 255.255.255.0

03

R1(config-if)#
no
shut

04

R1(config-if)#
int
lo0

05

R1(config-if)#
ip
add
192.168.1.1 255.255.255.240

06

R1(config-if)#
no
shut

07

R1(config-if)#
int
lo1

08

R1(config-if)#
ip
add
192.168.1.17 255.255.255.240

09

R1(config-if)#
no
shut

10

R1(config-if)#
int
lo
2

11

R1(config-if)#
ip
add
192.168.1.33 255.255.255.240

12

R1(config-if)#
no
shut

13

R1(config-if)#
int
lo
3

14

R1(config-if)#
ip
add
192.168.1.49 255.255.255.240

15

R1(config-if)#
no
shut

16

R1(config-if)#router
rip

17

R1(config-router)#
no
auto

18

R1(config-router)#
ver
2

19

R1(config-router)#
net
12.0.0.0

20

R1(config-router)#
net
192.168.1.0

21

R1(config-router)#
end

R2配置:
01

R2(config)#
int
s 0/1

02

R2(config-if)#
ip
add
12.1.1.2 255.255.255.0

03

R2(config-if)#
no
shut

04

R2(config-if)#
int
s 0/0

05

R2(config-if)#
ip
add
23.1.1.2 255.255.255.0

06

R2(config-if)#
no
shut

07

R2(config-if)#router
rip

08

R2(config-router)#
ver
2

09

R2(config-router)#
no
auto

10

R2(config-router)#
net
12.0.0.0

11

R2(config-router)#
net
23.0.0.0

12

R2(config-router)#
end

R3配置:
01

R3(config)#
int
s 0/1

02

R3(config-if)#
ip
add
23.1.1.3 255.255.255.0

03

R3(config-if)#
no
shut

04

R3(config-if)#
int
lo
0

05

R3(config-if)#
ip
add
192.168.1.129 255.255.255.128

06

R3(config-if)#
no
shut

07

R3(config-if)#router
rip

08

R3(config-router)#
ver
2

09

R3(config-router)#
no
auto

10

R3(config-router)#
net
192.168.1.0

11

R3(config-router)#
net
23.0.0.0

12

R3(config-router)#
end

配置完成后,查看一下R3的路由表:
01

R3#
show
ip
route

02

03

23.0.0.0/24 is subnetted, 1 subnets

04

C 23.1.1.0 is directly connected, Serial0/1

05

12.0.0.0/24 is subnetted, 1 subnets

06

R 12.1.1.0 [120/1] via 23.1.1.2, 00:00:24, Serial0/1

07

192.168.1.0/24 is variably subnetted, 5 subnets, 2 masks

08

R 192.168.1.32/28 [120/2] via 23.1.1.2, 00:00:24, Serial0/1

09

R 192.168.1.48/28 [120/2] via 23.1.1.2, 00:00:24, Serial0/1

10

R 192.168.1.0/28 [120/2] via 23.1.1.2, 00:00:24, Serial0/1

11

R 192.168.1.16/28 [120/2] via 23.1.1.2, 00:00:26, Serial0/1

12

C 192.168.1.128/25 is directly connected, Loopback0

13

/R3上学到了R1上的4条路由/

下面在R1的s0/0接口上使用手动汇总:
注意!汇总是在路由的外出接口上面做的,如果有多条外出接口,就要在每个接口上执行手动汇总。
01

/在R1 s0/0接口上配置汇总/

02

R1(config)#
int
s 0/0

03

R1(config-if)#
ip
summary-address
rip
192.168.1.0 255.255.255.192

04

05

/等待R3收敛后(差不多要3~4分钟左右),查看R3的路由表,就只能看到R1汇总后的一条路由条目了/

06

R3#
show
ip
route

07

08

23.0.0.0/24 is subnetted, 1 subnets

09

C 23.1.1.0 is directly connected, Serial0/1

10

12.0.0.0/24 is subnetted, 1 subnets

11

R 12.1.1.0 [120/1] via 23.1.1.2, 00:00:15, Serial0/1

12

192.168.1.0/24 is variably subnetted, 2 subnets, 2 masks

13

R 192.168.1.0/26 [120/2] via 23.1.1.2, 00:00:15, Serial0/1

14

C 192.168.1.128/25 is directly connected, Loopback0

d.路由翻动
当路由的接口在"UP"和"DOWN"之间快速变换时,就会产生路由翻动,而路由汇总除了可以减小路由表大小,还能有效的将上游路由从路由翻动问题中隔离出来;比如在上面这个实例中,没使用手动汇总前,不停的开启关闭R1上的loopback 0就会造成R2和R3不停的接收新的路由更新,它们的处理器将不停的工作,影响网络性能;当使用汇总后,虽然R1的直连路由不停的发生变化,但是汇总路由没有发生任何变化,所以R2和R3也不会时不时的收到lo0的网络不可达或可达的更新了。
0×3.RIPv2高级配置
a.RIPv2路由验证
使用下面这个拓扑来完成RIPv2路由验证实验:


Cisco-CCNA-RIPv2-5
Cisco-CCNA-RIPv2-5

R1配置:
01

R2(config)#
int
lo
0

02

R2(config-if)#
ip
add
192.168.1.1 255.255.255.0

03

R2(config-if)#
no
shut

04

R2(config-if)#
int
s 0/0

05

R2(config-if)#
ip
add
12.1.1.1 255.255.255.0

06

R2(config-if)#
no
shut

07

R2(config-if)#router
rip

08

R2(config-router)#
net
12.0.0.0

09

R2(config-router)#
net
192.168.1.0

10

R2(config-router)#
version
2

11

R2(config-router)#
exit

12

R2(config)#
key
chain
test1 /创建密钥链test1/

13

R2(config-keychain)#
key
1 /配置密钥链中的
key
1
/

14

R2(config-keychain-
key
)#
key-string
ccna1 /配置密码串/

15

R2(config-keychain-
key
)#
end

16

R2#
conf
t

17

R2(config)#
int
s 0/0 /在与R2相连的串口中配置使用密钥链test1进行验证/

18

R2(config-if)#
ip
rip
authentication
key-chain
test1

19

R2(config-if)#
ip
rip
authentication
mode
md5 /使用MD5验证/

20

R2(config-if)#
end

21

22

/*

23

  • 验证模式分为两种,一种是text明文验证,一种是md5验证,本实验使用了md5验证

24

  • 另外,两端使用的密钥链中的密码串必须相同,并且验证模式也要相同,才能验证成功。

25

*/

R2配置:
01

R2(config)#
int
s 0/1

02

R2(config-if)#
ip
add
12.1.1.2 255.255.255.0

03

R2(config-if)#
no
shut

04

R2(config-if)#
int
lo
0

05

R2(config-if)#
ip
add
192.168.2.1 255.255.255.0

06

R2(config-if)#
no
shut

07

R2(config-if)#router
rip

08

R2(config-router)#
version
2

09

R2(config-router)#
net
12.0.0.0

10

R2(config-router)#
net
192.168.2.0

11

R2(config-router)#
exit

12

/暂时不执行下面的配置,大家可以查看下此时R1和R2是否可以通过RIP学习到对方路由/

13

R2(config)#
key
chain
test2 /test2是密钥名,只起到标识作用/

14

R2(config-keychain)#
key
1

15

R2(config-keychain-
key
)#
key-string
ccna1 /密钥字符串
"ccna1"
必须和R1相同
/

16

R2(config-keychain-
key
)#
end

17

R2#
conf
t

18

R2(config)#
int
s 0/1

19

R2(config-if)#
ip
rip
authentication
key-chain
test2

20

R2(config-if)#
ip
rip
authentication
mode
md5 /验证模式也必须相同/

21

R2(config-if)#
end

可以将R2的密钥字符串配置成和R1不同的字符,或者将R2改成text明文验证,然后开启"debug ip rip"查看输出,将会看(invalid authentication)验证失败的消息。
b.IPv1和RIPv2的共存
利用上面的RIPv2路由验证实验的拓扑图来完成下面的RIPv1和RIPv2共存的实验,实验之前先将这两台路由器重新关闭再启动,清空它们的配置:
R1配置:
01

R1(config)#
int
s 0/0

02

R1(config-if)#
ip
add
12.1.1.1 255.255.255.0

03

R1(config-if)#
no
shut

04

R1(config-if)#
int
lo0

05

R1(config-if)#
ip
add
192.168.1.1 255.255.255.0

06

R1(config-if)#
no
shut

07

R1(config-if)#router
rip
/并没有启动RIPv2,默认使用RIPv1/

08

R1(config-router)#
net
12.0.0.0

09

R1(config-router)#
net
192.168.1.0

10

R1(config-router)#
end

R2配置:
01

R2(config)#
int
s 0/1

02

R2(config-if)#
ip
add
12.1.1.2 255.255.255.0

03

R2(config-if)#
no
shut

04

R2(config-if)#
int
lo0

05

R2(config-if)#
ip
add
192.168.2.1 255.255.255.0

06

R2(config-if)#
no
shut

07

R2(config-if)#router
rip

08

R2(config-router)#
version
2 /开启了RIPv2/

09

R2(config-router)#
net
12.0.0.0

10

R2(config-router)#
net
192.168.2.0

11

R2(config-router)#
end

分别查看R1、R2的路由表:
01

/发现R1上面能学习到R2上面的回环接口/

02

R1#
show
ip
route

03

04

12.0.0.0/24 is subnetted, 1 subnets

05

C 12.1.1.0 is directly connected, Serial0/0

06

C 192.168.1.0/24 is directly connected, Loopback0

07

R 192.168.2.0/24 [120/1] via 12.1.1.2, 00:00:20, Serial0/0

08

09

/R2上面什么都学不到,这是为什么呢?/

10

R2#
show
ip
route

11

12

12.0.0.0/24 is subnetted, 1 subnets

13

C 12.1.1.0 is directly connected, Serial0/1

14

C 192.168.2.0/24 is directly connected, Loopback0

为什么R2学不到任何R1的路由信息?分别查看R1和R2的协议情况:
01

/*

02

  • 可以看到R1
    "send version 1, receive any version"

03

  • 也就是说,R1发送版本1的更新,接收任何版本(V1,V2)的更新,

04

  • R1配置的是RIPv1,而R2配置的是RIPv2,当R2发送过来v2版本的更新时,

05

  • R1照样接收它,这就是R1为什么能学到R2的回环接口的原因。

06

*/

07

R1#
show
ip
protocols

08

Default
version
control: send
version
1, receive any
version

09

Interface Send Recv Triggered RIP Key-
chain

10

Serial0/0 1 1 2

11

Loopback0 1 1 2

12

13

/*

14

  • 而R2上面的RIPv2协议默认只能
    "send version 2, receive version 2"

15

  • 也就是发送版本2和接收版本2,R1发过来的版本1的更新直接被忽略了。

16

*/

17

R2#
show
ip
protocols

18

19

Default
version
control: send
version
2, receive
version
2

20

Interface Send Recv Triggered RIP Key-
chain

21

Serial0/1 2 2

22

Loopback0 2 2

如果一端配置的是RIPv1,另一端配置的是RIPv2,可以通过下面的方法让它们通信;
在R1上的每个外出接口(如果有多个)上配置发送版本1和版本2的更新,或者在R2的外出接口上配置接收版本1和版本2的更新;
1

/在运行RIPv1的一端,让它同时发送版本1和版本2的更新/

2

R1(config)#
int
s 0/0

3

R1(config-if)#
ip
rip
send
version
1 2

4

5

/或者在运行RIPv2的一端,让它同时接收版本1和版本2的更新/

6

R2(config)#
int
s 0/1

7

R2(config-if)#
ip
rip
receive
version
1 2

这样,两端就都能学到对方的路由条目了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,126评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,254评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,445评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,185评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,178评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,970评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,276评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,927评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,400评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,883评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,997评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,646评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,213评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,204评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,423评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,423评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,722评论 2 345

推荐阅读更多精彩内容