论坛风格切换切换到宽版
  • 1404阅读
  • 0回复

[问题求助]Linux下如何接ADSL一类的宽带猫带动局域网上internet [复制链接]

上一主题 下一主题
 
发帖
1963
C币
-140722
威望
350
贡献值
1
银元
-2
铜钱
4425
人人网人气币
0
只看楼主 倒序阅读 使用道具 楼主  发表于: 2009-05-01
Linux下如何接ADS.L一类的宽带猫带动局域网上internet.<性病>

系统准备:一个运转正常的Linux(这个大.家都有)--- 印刷
硬件.要求:至少一块.网卡,宽带设备已经申请完毕,同时已经开通

广州电信的ADS(LAN)L使用的是PPPOE拨号方式,因此.,要在Linux下使用ADSL,必须安装PPPOE.客户端软件。健康
下面说明如何进行安装:  
  .   本人以RedHat Linux 7..3为平台,其它平台Linux的安装办法可以参照下面安装的步骤。 健康
.    一、安装的前提条件  .
     1.确保安.装了网卡并工作正常--------------彩票
     使用命令
     #ifconfig .eth0    外汇
     查看网卡状态
     2.在系统中不.要设置默认路由(网关),让A.DSL拨号后自动获得  .
     如果已经设置了.默认路由,使用以下方法.删除:  学习
     在文件 /etc/sysconfig/netwo.rk 中删除 GA.TEWAY= 这一行,然后以root执行:  .
  .   #/etc/rc.d/init.d/ne.twork restart             女人
.    3.已经安装了pppd软件包  投资
. .   如果存在文件 /usr/sbin/pppd,则说明已经安装了pppd;  .
     如未安装,从Red.HatLinux 安装光盘上装ppp-2.3.11-4.i386.rpm(版本可能不一样)这个软件包 .     健康
     二、安装P.PPOE客户端软件  服务器
     Linux下的PPPOE客户端软件比较多,而且大多使用GNU License,推荐使用rp-pppoe这个软件包, 从http://www.roaringpenguin.com/pppoe/这个网站上,不仅可以下栽RedHat 平台下的rp-pppoe的二进制软件包,而且可以下栽源代码软件包。  教育
     1.二进制软件.包的安装:             女人
     A.下栽二进制软件.包  .
     http://www.roaringpenguin.com/pppoe/rp-pppoe-3.5-1.i386.rpm  .
     B.进行安装  
     以root执行:
     #rp.m -Uvh rp-pppoe-3.5-1.i3.86.rpm  .
     2.从源代码.进行安装:  .
     从源代码进行安装同样.适用.于其它平台的Linux,但必须在Linux系统中安装gcc编译器(        游戏          )
。  
  .   A.下栽源代码软件包  .
     http://www.roaringpenguin.com/pppoe/rp-pppoe-3.5.tar.gz  服务器
     B.解压缩
     #tar xvfz rp-pppoe-.3..5.tar.gz      美容
     #cd r.p-pppoe-3.5(广告)
   .  C.进行编译和安装  .
     运行脚本  
     #./go  
  .   将自动进行编译和安装,最后,自动调用/usr/s.bin/adsl-setup进行配置,具体解释见三。  健康
     三、配置P.PPOE客户端软件  .
  .   安装完软件包后,必须配置p.ppoe的配置文件/etc/ppp/pppoe.conf,从而让ADSL拨号.
时使用配置文件.中的用户名、密码等参数。我们不必手.工改动这个文件,可以使用           建材
     adsl-setup..这个工具进行配置:  .
     #/usr/sbin/a.dsl-s.etup  .
     当出现  
     >;>;>; Enter your PPPoE .user na.me :      美容
     输入A.DSL帐号的用户名  外贸
     当出现  
   .  >;>;>; Enter th.e Ethernet interface connected to the ADSL modem  .
     For Solaris, this is like.ly to be somethin.g like /dev/hme0.  域名
     For Linux, it will .be ethn, where. 'n' is a number.             鲜花
     (default eth0):.  服务器
     输入 eth0 ,这是ADSL相连的网卡的名..字      外汇
     当出现  
     >;>;>;. Enter the .demand value (default no):      外汇
     输入 no  
     当出现  
    . >;>;>; Enter t.he DNS information here:  投资
     输入 "server". ,这表示使用ADS.L拨号自动获得的DNS服务器IP地址  .
     当出现  
     >;>;>.; Please ente.r your PPPoE password:            婚庆
     .输入ADSL帐号的密码  健康
     当出现  
     >;>;>; Choose a type of fir.ewall (0-2).:            婚庆
     输入 0 ,不使用防火墙 .             杀毒
     当出现  
     >;>.;>; Accept these s.ettings and adjust configuration files (y/n)?  教育
     如果输入的信息正确,输入.. y ,完成配置,否则,输入 n 重新输入。              杀毒
     四、启动P.PPOE客户端软件      美容
     使用命令  
     /usr/sbin/adsl-start 启动.PPPO.E客户端软件,进行连接,如果成功,将出现           鲜花
     Co.nnected;  (广告)
     如果不成.功,请检查网线、ADSL MODEM等物理设备,并查看 /var/.log/messages中的信息  虚拟主机
     /usr/sbin/adsl.-stop 关.闭和ISP的连接  学习
     /usr/.sbin/adsl-.status 查看当前连接的状态  .
     如果想在Linux系统启动时.自动启动ADSL连接,输入以下命.令              杀毒
    . #chkconfig --add adsl . .
     将在当前的运行级下加入ADSL的自启..动脚本  健康
     五、测试  
     当连接成功后,使用命令..
     #ifconf.ig -a  (        游戏          )
     在输出中应.含有关于 ppp0 的信息,其中还绑定了IP 地址,说明已经从拨.号中获得了IP地址。  .
     使用命令
     #net.stat -nr  外贸
.    查看路由表信息,这时的默认路由应该是上面获得的IP地址。.      健康
    . 如果没有默认路由,我们可以手动增加:             鲜花
.    #route add d.efault gw 上面获得的IP地址  .
     使用命令
    . #nslookup www.sin.a.com.cn             建材
     如果解析出.新浪的IP,说明已经.从拨号中正确获得了DNS服务器            婚庆
     最后,使用命令ping某个域名或IP,如果有响..应,表示你已经大功告成了。 域名
注:好像在进行配置的过程中,会提示你是否在启动时加载ADSL,选y.es,这样就会省的登录后再start了..电脑

六、使用双网卡带动.公司网、家庭网络上网(        游戏          )

  硬件要求:同上双网卡

NAT方式:接内部网络的网卡设置IP为私有地址(192.16.8.0.0/24、172.16.0.0/16、10.0.0.0/8),例如192.168.100.123/24。不要设置默认路由(网关),DNS设置为广州地区(61.144.56.100),其它地区的相应改动为本地区的DN.S. 在/etc/rc.d/目录下用touch命令建.立firewall文件,执行c.hmod u+x. firewall以改变文件属性,编辑.
/et..c/rc.d/rc.local文件,在末尾加上/etc/rc.d/firewall以确保开机时能自动运行该脚本..
firewall内容为:
#!/bin/sh
echo "Ena.ble IP. Forwarding..."--------------彩票
echo. "1">;/proc/sys/net/ipv4/ip_fo.rward教育
echo "S.t.arting iptables rules..."    美容
/s.bin/modprobe ipta.ble_filter虚拟主机
/sbin/modprobe ip_tab.les [成人用品]
/sbin/modprobe i.ptable_n.at           建材
#Ref.resh all chains          婚庆
/sbin/iptables .-F -t nat学习
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o p.pp0 -.j MMASQUERADE.
客户端设置(windows98/2000/xp、linux)网关设置为这台linux地址.(192.168..100.123),DNS.设置为61.144.56.100。 域名

透明代理
配置代理软件squid:

编辑/usr/local/squ.id/etc/s.quid.conf,修改以下内容,确保以下配置:电影

  .http_port 192.168..100.123:8080--------------彩票

  cache_.mem 48 MB    健康
  acl a.ll src 0.0..0.0/0.0.0.0电影
  acl ma.nager proto ca.che_object.
  acl localhost src 127.0..0.1/255.255.255..255.
  a.cl SSL_ports por.t 443 563           女人
  acl Safe_ports port 80 # h.t.tp.
  acl S.afe_ports port 21 # ft.p学习
  ac.l Safe_ports port 443 5.63 # https, snews学习
  acl Safe_ports port 70 #. .gopher健康
  acl .Safe_ports port 210 .# wais           鲜花
  acl Saf.e_ports port 1025-65535 # unreg.istered ports健康
  acl Safe_ports port 2.80 # http-.mgmt    美容
  acl Safe_ports port 488.. # gss-http    美容
  .acl Safe_ports port 591 # filem.aker              乙肝
. acl Safe_por.ts port 777 # multiling http.
  acl CONNECT me.thod. CONNECT.
  acl fl.ag src  192.168.10.0.0/255.255.255.0           女人


  httpd_acc.el_ho.st virtual [成人用品]
  h.ttpd_accel_port 80              电子
  httpd_acc.e.l_with_proxy on            建材
  httpd._accel._uses_host_header on     健康
  ca.che._effective_user nobody            建材
  cache_effective_group no.bo.dy 健康
  http_access allow fla.g 健康

  http_access .deny  all学习


  (限制只允许局域网用户使用代理,具体可以参考squid手册中关于.Ac.cess Control Lists的内容来限制访问代理)           女人

  cache_dir ufs /.var/spool/sq.uid 100 16 256    美容

  cache_dir type Di.rectory-Name Mbytes Lev.el-1 Level2(广告)

  (说明:指定squid用来存储对象的交换空间的大小及其目录结构。可以.用多个cache_dir命令来定义多个这样的交换空间,并且这些交换空间可以分布不同的.磁盘分区。"directory. "指明了该交换空间.的顶级目录。如果你.想用整个磁盘来作为交换空间,那么你可以将该目录作为装载点将整个磁盘mount上去。缺省值为/var/spool/squid。"Mbytes"定义了可用的空间总量。需要注意的是,squid进程必须拥有对该目录的读写权力。"Level-.1"是可以在该顶级目录下建立的第一级子目录的数目,缺省值为16。同理,"Level-2"是可以建立的第二级子目录的数目,缺省值为256。为什么要定义这么多子目录呢?这是因为如果子目录太少,则存储在一个子目录下的文件数目将大大.增加.,这也会导致系统寻找某一个文件的时间大大增加,从而使.系统的整体性能急剧降低。所以,.为了减少每个目录下的文件数量,我们必须增加所使用的目录的数量。如果仅仅使用一级子目录则顶级目录下的子目录数目太大了,所以我们使用两级子目录结构。             电子

  那么,怎么来确定你的系统所需要的子目录数目.呢?我们可以用下面的公式来估算.。服务器

  已知量:

  ..DS = 可用交换空间总量(单位KB)/ 交换空间数目.

  OS = 平均每个对象的大.小= 20k              乙肝

  NO = .平均每个二级子目录所存.储的对象数目 = 256    健康

  未知量:

 . L1 = 一级子目录的数量             汽车

  L2 = .二级子目录的数量          婚庆

  计算公式:

 . L1 x L2 = DS / OS / NO健康

  (注意这是个不定.方程,可以有多个解)           鲜花

  acl al.low_domain dstdomai.n "/etc/squid/allow_domain"             汽车
  创建cache目录

  [root@proxy squ.id]# squ.id -z.

  修改该目录.所有者squid:外贸

  [root@proxy sq.uid]# cho.wn squid:squid /usr/spool/squid健康

  最后启动squid:

  [root@iptable logs]# /usr/local/squid/bin/.RunCac.he &(广告)

 并且系统中应该有如下几个端口被监.听:           鲜花

  [root@pro..xy logs]# netstat -ln投资
.. tcp 0 0 0.0.0.0:3128 0.0.0.0:* LISTEN--- 印刷
.. udp 0 0 0.0.0.0:3130 0.0.0.0:*--------------彩票

  这些说.明squid已经正常启动了。电影

  .然后使用Redhat的se.rviceconf工具以使得系统启动时自动启动squid服务器。服务器

5.iptables的设置

  在/etc/rc.d/目录下用touch命令建立firewall文件,执行chmod u+x firewll以更改文件属性,编辑/etc/rc.d/rc.lo.cal文件,在末尾加上/etc/rc.d/firewall以确保开.机时能自动.执行该脚本。.

  firewall.文件内容为:.

  #!/bin/sh

  echo. "Enabli.ng IP Forwarding..."投资
  echo 1 >;. /proc/sys/net./ipv4/ip_forward学习

  echo. "Starting .iptables rules..."--------------彩票

  #Refres.h all chains.

  /sbin/ip.tables -F -t .nat域名

  iptables.. -t nat -A PREROUTING -i eth1 -p tcp -m tcp.
      --dport. 80 -j REDIRECT --to-ports 80.80(广告)

  iptables -t nat -A POST.ROUTING -s 192.168.0.0/24 -o ppp0 -- -j MM.A.SQUERADE.
七、在含有多个vlan的三层交换网络中实现.squi.d+iptables的透明代理            杀毒
  .   在企业中网络常常会有三层交换。它能够有效隔离广播,防止广播风暴。通过三层.交换机域名
划分vlan,使得应用和管理都变得相对容易些。但也给代理的设置带来.一点小麻烦,传统代理要设置代理服务器地址和端口,这对三层交换网络没有什么问题。关键是透明代理中网关的设置,在三层交换的网络中每个vlan的计算机的网关都要设置成所在vlan的网关,如:下表中vlan1的网关必须是192.168.100.1,vlan2的网关必须是192.168.110.1,像普通网络中把网关都设置成代理服务器的地址是绝.对不行的。所以,三层交换网络中透.明代理.的设置主要问题集中在三层中心交换机和代理服务器路由的设置,三层交换机的路由.表中要有一条默认路由指向代理服务器,服务器的路由表中要有一个容纳所有vlan.的网关.。服务器
   以下是我的网络说明:
   网络内网有15个vlan如路由表所示,代理服务器(squid+iptables)在vlan1中.服务器有两块网卡,eth0连接外网ip是A.B.C.D.,网关为A.B.C.1。et.h1连接..内网ip是192.168.100.123/24不设网关。给服务器加上一条路由,将192..168.0.0/16,指向vlan1的网关192.168.100.1,route add -net 192.168.0..0 netmask 255.2.55.0.0 eth1以保证与其他vlan的通信,如此网络.部分便配置成功,关于透明代理设置这里就不说了,请参考其他文章。这样所有的vlan的计算机只要网关和dns配置好就可以上网了,如:vlan3中.某台计算机ip设置192.168.120.47,网关为192.168.120.1,dns地址为服务商给的(广州地区ADSL:61.144.56.100),这样就OK了。其出网的路由为->;192.168..120.47->;192.168.120.1->;192.168.100.1->;192.168.100.123->;A.B.C.1->;......电脑
评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
快速回复
限100 字节
如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
 
上一个 下一个