荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: zzt (我命由我不由天), 信区: Linux
标  题: LINUX与ISDN一线通(fwd)
发信站: BBS 荔园晨风站 (Fri Aug 18 14:56:42 2000), 转信

【 以下文字转载自 zzt 的信箱 】
【 原文由 zzt.bbs@bbs.dot66.net 所发表 】
作者: phila (新新人类真爱一百) 站内: Linux
标题: LINUX与ISDN一线通
时间: Thu Aug 10 14:58:15 2000

LINUX与ISDN一线通
(04/27/2000)

  读了上期LINUX专题,相信大家对LINUX已有一个相当全面的了解,现在我就谈谈如何在
LINUX系统上安装ISDN以及如何在LINUX下,让局域网共享ISDN上网。

  一:如何在LINUX系统下安装ISDN安装及配置过程:

  1、打开ip_forward及相关功能,加入下面的命令行到/etc/rc.d/rc.local

  echo 1 > /proc/sys/net/ipv4/ip_forward

  /sbin/modprobe ppp

  /sbin/modprobe bsd_comp

  /sbin/modprobe ip_masq_ftp

  /sbin/modprobe ip_masq_irc

  /sbin/modprobe ip_masq_raudio

  /sbin/modprobe ip_masq_vdolive

  /sbin/ipfwadm-F-a accept-m-W ppp0-S 192.168.1.0/24-D 0.0.0.0/0

  2、安装diald-0.16-5 rpm包(login as root)

  #rpm-ivh diald-0.16-5a-1.i386.rpm

  #rpm-ivh diald-config-0.16-5a-1.i386.rpm

  3、diald默认的配置文件是/etc/diald.conf,但如果安装了RPM包之后,配置文件就放
在/etc/diald/diald.conf下面,所以你需要拷贝到/etc/目录#cp /etc/diald/diald.con
f /etc/diald.conf

  4、根据自己所在地的拔号参数,更改/etc/ppp/options和/etc/ppp/pppscript,恢复相
应行的注释。

  5.下面所有相关配置文件,请参阅。

  〔jephe@proxy /etc〕$more /etc/diald.conf

  accounting-log /var/log/diald.log

  device /dev/ttyS0

  speed 115200

  lock

  mode ppp

  dynamic

  local 192.168.0.1#不需改变这两行,即使你的网络不用192.168.0.X网段

  remote 192.168.0.2

  up-delay 8

  defaultroute

  modem

  crtscts

  connect /etc/diald/connect

  redial-timeout 8

  fifo /etc/diald/diald.ctl

  include /usr/lib/diald/standard.filter

  -------------

  〔root@proxy ppp〕#more /etc/diald/connect

  #!/bin/sh

  /usr/sbin/chat-v-f /etc/ppp/pppscript

  〔root@proxy ppp〕#ls /etc/diald/connect-l (该文件必须有执行权限)

  -r-xr-xr-x 1 root root 53 Jan 29 19:41

  /etc/diald/connect

  -------------

  〔jephe@proxy ppp〕$more /etc/ppp/options

  name“your_account_at_ISP"#ChineNet

  #name“……."(以下参数改为自己的)

  #name“……."

  #name“…….."

  login

  noipdefault

  asyncmap 0

  ----------

  〔root@proxy ppp〕#more /etc/ppp/pap-secrets

  #Secrets for authentication using PAP

  #client server secret IP addresses

  your_account_at_ISP*your_passwd_at_ISP

  #…..*……(和前面相对应)

  #…..*…….

  #……*…..

  ------------

  〔root@proxy ppp〕#more /etc/ppp/pppscript

  TIMEOUT 60

  ABORT ERROR

  ABORT BUSY

  ABORT“NO CARRIER"

  ABORT“NO DAILTONE"

  “"“AT&F1s60=64s61=2s70=0s71=1s80=1" OK(#s80=1启动双通道模式。)

  “atd163"

  TIMEOUT 75

  CONNECT

  二:通过一台LINUX,局域网共享ISDN上网

  ISDN在国内的应用越来越多,与原有的电话拨号方式相比,它比电话线拨号上网的带宽
增大,ISDN提供了更有效的多样化业务服务,不仅增加了图像、图形、数据多种业务,而且
可为用户提供64Kbit/s为基础的数字连接,传输速率比在电话网上利用Modem传数据的速率
提高数倍以上。ISDN的通话建立很快,不像Modem那样每次有较长的时间等待过程,ISDN是
数字化的,建立连接只需几秒种即可,中小型企业通过它共享上网非常合适。Linux在共享
上网方面的优势是Windows无法相比的,它的IP改装技术尽管还处于开发测试阶段,但其效
率远远高于普通的Proxy软件。

  ISDN上网的必要设备

  现在国内用在ISDN上网的设备有很多种,没有任何厂商声明支持Linux,但是Linux已经
可以支持大多数ISDN设备。这里介绍S0卡+网络终结器(NT1)这种配置,因为这是国内电
信部门的推荐配置,而且他们可以提供Windows平台的技术支持。

  NT1设备可以请电信部门帮助调试好并接通线路,把S0卡直接插入Linux机器的ISA槽中
,接好与NT1的线路。重点介绍一下如何使Linux识别这块卡,并使之拨号上网。

  ISDN上网与我们常用的Modem拨号上网类似。在Linux下甚至可以把S0卡模拟成Modem设
备,所不同的是ISDN可以使用同步PPP(synchronous PPP),而Modem拨号一般使用异步PP
P(anonymous PPP)。对于这两种拨号方式,邮局或ISP采用不同的接入设备。尽管ISDN可以
模拟成Modem进行异步模式的拨号,但一般只是用来测试S0卡是否运行正常,真正在上网时
通常要用同步PPP拨号模式。

  所需软件包如下:

  ●Linux2.0.36

  Linux使用的内核版本必须是2.0.36,它在ISDN的支持上作了很大改进。2.0.36内核的
源码可以在Ftp://ftp.cdrom.com//Linux/sunsite/kernel/中下载。

  ●Isdn4linux

  这是一个为Linux开发的ISDN各种应用的合集,它的最新版本的文档是德文写的,可以
在ftp://ftp.murphy.nl/put/isdn4linux/中下载它的最新版本。

  ●ISAPNP tools

  大多数的S0卡都是即插即用的,而Linux对即插即用的内核支持在2.1.x中才能实现,因
此必须去http://www.roestock.demon.co.uk/isapnptools/下载ISAPNP软件包,以便在Lin
ux上识别这块卡。如果你使用的S0卡并非即插即用,则不用考虑这个软件包。

  ISDN的Linux内核配置步骤如下:

  #cd/usr/src/linux

  #make menuconfig

  〈*〉ISDN support

  [*] Support synchronous PPP

  〈M〉Hisax SiemensChipSet driver support

  [*] Hisax Support for EURO/DSS1

  [*] Hisax Support for teles 16.3c

  #make dep

  #make clean

  #make zImage

  (wait for some minutes ....)

  #cp/vmlinuz/vmlinuz.bak (备份内核)

  #cp/usr/src/linux/arch/i396 /boot/zImage/vmlinuz

  #lilo

  #reboot

  使用Hisax配置S0卡

  1.非即插即用类

  Teles 16.3 ISDN卡一般使用如下缺省参数:

  *I/O address: 0x180

  *IRQ: 15,9,10,11,12

  *Mem address: 0(不必考虑)

  使用如下命令识别这块卡的参数:

  #modeprobe hisax io=0x180 irq=10 type=3 protocol=2 id=isdn0

  其中IRQ直接由hisax驱动程序配置,I/O地址要查看说明书,如果不是0×180,可以到
卡上跳线。

  2.即插即用类

  这类卡不需要跳线或开关,所有参数要先通过ISAPNP配置。如果你正确地编译安装ISA
PNP软件后,应该存在pnpdump和isapnp这两个命令,首先,执行:#pnpdump〉/etc/isdn.
conf

  这样会把所有pnp卡的合适参数写入到isdn.conf中。而它们都被加上了注释,需要你手
工去掉一组参数的注释,表示选择了这组参数作为这块卡的配置。具体的做法就是编辑/et
c/isdn.conf文件,改成类似如下的形式:

  (CONFIGURE TAG261012101108041(LD 0

  (IO 0(SIZE 2) (BASE 0x680))

  (INT 0(IRQ 10(MODE+E)))

  (NAME″TAG2610/2101108041[0]{TELES.S0/16.3c Plug&Play}″)

  (ACT Y)

  ))

  (WAITFORKEY)

  然后执行:

  #isapnp/etc/isdn.conf

  最后执行:

  #modprobe hisax irq=10 io=0x680 type=14 protocol=2 id=isdn0

  识别S0卡成功的标志

  如果Hisax成功识别S0卡,在/var/log/messages中会显示如下信息:

  #tail /var/log/messages

  Mar 23 10:44:45 L-server kernel: Hisax: 2 channels

  added

  Mar 23 10:44:45 L-server kernel: Hisax: module

  installed

  Isdn4Linux的安装与配置

  下载软件包并解压缩到一个目录,首先“make menuconfig“进行配置,然后执行“ma
ke; make install”。这个软件包包含了很多为ISDN作的应用程序,在编译时很容易遇到问
题(因为有的软件包要依靠一些特殊的函数库)。你只要保证isdnctrl这个程序能够顺利编
译并安装就可以,遇到其他编译不过的程序,可以通过“make menuconfig”把它去掉,留
待以后再编译。

  要注意的是有的Linux版本不包含ISDN设备,可以用“ls/dev/ttyI*; ls/dev/ippp*
”查看,若没有,要执行scripts目录下的“makedev.sh”,加入ISDN设备。

  同步PPP的配置  做完以上步骤后,就可以进行最后关键的同步PPP配置了,现在国内
的PPP都是动态分配IP,为了确保你的Linux支持动态IP,请键入:



  #echo 1〉/proc/sys/net/ipv4/ip_dynaddr

  编辑一个名为isdn-on的文件,用来初始化ISDN设备,内容如下:

  MYUSER=aaa#在邮局或ISP的账号名   REMNAME=public#ISP的名字

  MYIP=0.0.0.0#待分配的动态IP

  REMIP=202.99.192.68#邮局的接拨服务器地址,

  若不清楚,请填0.0.0.0

  MYMSN=7588175#我的电话号码   REMMSN=163#邮局的拨号号码

  /sbin/isdnctrl verbose 3

  /sbin/isdnlog-sS-v1-m0x17d7-l0x3d7-C/dev/console-D/dev/isdnctrl

  /sbin/isdnctrl system on

  /sbin/isdnctrl addif ippp0#产生ISDN网络设备

  /sbin/isdnctrl eaz ippp0$MYMSN

  /sbin/isdnctrl addphone ippp0 out$REMMSN#拨号号码

  /sbin/isdnctrl huptimeout ippp0 90#90秒无人使用ISDN后自动挂断

  /sbin/isdnctrl l2_prot ippp0 hdlc

     /sbin/isdnctrl l2_prot ippp0 trans

  /sbin/isdnctrl encap ippp0 syncppp#支持同步PPP

  /sbin/isdnctrl dialmode ippp0 auto#拨号设置成自动模式,即有IP请求就自动拨号
(dial-on-demand),也可以设置成manual,即手动拨号。

  /sbin/ifconfig ippp0$MYIP pointopoint$REMIP

  /sbin/route add$REMIP ippp0

  /sbin/ifconfig ippp0-arp-broadcast

  /sbin/ipppd user$MYUSER remotename$REMNAME \

  noipdefault

  \

  ipcp-accept-local

  \

  ipcp-accept-remote

  \

  name$MYUSER

  \

  -detach

  \

  mru

  1500 \

  mtu

  1500 \

  lcp-restart 1

  \

  defaultroute

  \

  /dev/ippp0&

  /sbinroute add default gw$REMIP

  在/etc/ppp目录下,创建三个新文件:

  1.ioption内容为空。

  2.pap-secrets

  #格式

  账号名

  *

  密码

  #例子

  #aaa*

  passwd

  3.chap-secrets

  #格式

  账号名

  *

  密码

  #

  *

  账号名

  ""

  #例子

  #aaa*

  passwd

  #*aaa

  ""

  根据例子填入自己的账号名和密码,由于包含密码,所以要限制读写权限:#chmod 6
00 pap-se#cretschmod 600 chap-secrets

  完成以上内容后,就可以尝试拨号上网了:

  #sh isdn-on

  #/sbin/isdnctrl dial ippp0

  #ifconfig

  大约四秒钟就可以完成拨号,在ifconfig中可以看到拨号后的网络设备ippp0,以及它
的端对端IP地址。接着核对路由表,请注意缺省路由一定要指向端对端连接中的远端IP地址
。如果没有此项,请手工加入缺省路由:

  #route add default gw

  202.99.192.68(xxx.xxx.xxx.xxx)

  配置好ISDN后,做好IP改装(请参照Linux Howto中的IP Masquerade Howto),就可以
通过这台Linux机器共享ISDN上网了。

  (特约作者丁红阳)



*
[1;37;45m我破茧成蝶,愿和你双飞,最怕你会一去不回,虽然爱过我,给过我,想过我,就是安
慰。
我向你飞,雨温柔地追,想你的拥抱把我包围。
我向你飞,多远都不累,虽然旅途中,有过痛和累。
我向你追,风温柔地吹,只要你无怨我也无悔。
爱是那么美,我心陶醉,被爱的感觉。
--
※ Origin: 笑 书 亭 <bbs.dot66.net>
◆ From: 202.107.204.9
--
※ 转载:·BBS 荔园晨风站 bbs.szu.edu.cn·[FROM: 192.168.1.11]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店