在两台Linux机器之间配置一条SLIP链路,以便使用互联网socket进行通信

来源:互联网 发布:淘宝店铺悬浮导航制作 编辑:程序博客网 时间:2024/04/30 06:32

/*

 *  blackboy   psyc209@163.com

 * QQ群: 135202158

 *  转载请注明作者及出处

 */

 

 

SLIP, 即Serial Line IP(串行线路IP), 是一个数据链路层协议,用于在串行线路上传输IP数据报。

本文讲述如何在两台用串口线(RS232)连接的Linux机器之间配置SLIP链路。

 

设两台机器为A, B。首先,将两台机器用串口线连接好,然后在A机器上依次运行如下指令:

 

slattach /dev/ttyS0 -p slip -s 9600 -m -d &

ifconfig sl0 192.168.1.1 pointopoint 192.168.1.2 up

route add default gw 192.168.1.2

其中,/dev/ttyS0是第1上串口设备,如果有多个串口,则依次是/dev/ttyS1, /dev/ttyS2...,要视情况而定。

slattach的-p选项指定要使用的数据链路层协议,可以是slip, cslip, ppp等; -s指定传输速率,可以是9600,115200等;

-m告诉串口设备不要工作在RAW data模式,而是要工作在协议驱动模式;-d输出调试信息。

ifconfig用于配置串行接口的ip信息等。sl0代表第一个串行接口,如果有更多,依次是sl1, sl2...。

route将对方ip添加为默认网关。

 

 

然后在B机器上依次运行以下指令:

 

slattach /dev/ttyS0 -p slip -s 9600 -m -d &

ifconfig sl0 192.168.1.2 pointopoint 192.168.1.1 up

route add default gw 192.168.1.1

 

 

指令和A一样,要注意的是ip地址要设对。还有就是两边所用的协议、传输速率也要一样。

 

好了,如果没有出错,连接就建立成功了。

可以用在A或B上运行“ping 对方地址”来测试连接是否畅通。

 

建立好SLIP链路后,我们就可以使用互联网套接字(Internet socket)编程来进行2者之间的通信了,而不必关心底层是串行线路还是以太网线。

如果不配置此链路,则串口设备工作在RAW data模式,收、发的数据都是原始数据,不走协议栈,不进行IP等封装。

 

 

以上配置在Redhat Linux Enterprise及CentOS 5上测试成功。

0 0
原创粉丝点击