1、ubuntu的服务器双网卡做NAT取代路由器单位一直是用的ADSL+ 路由器+ 交换机的上网方式,一时心血来潮将ubuntu的服务器双网卡做NAT取代路由器。之前主要配置了samba和apache ,那么好的配置也没用到什么东西就折腾一下吧简单倒是满简单的,首先查看IP 转发,然后测试规则,所有测试通过后写入启动。过程:一、安装好双网卡后将网络拓扑结构变为ADSL-UBUNTU服务器-交换机二、查看网络信息,使用lspci并配合ifconfig -a 两块网卡正常识别启用,然后配置网卡参数。eth0接 ADSL,不用配置,保留为原始状态。eth1接交换机,就必 须指定ip地址,编辑/etc /
2、network/interfaces 进行修改,使用代码为:$ sudo nano /etc/network/interfacesauto eth1iface eth1 inet staticaddress 192.168.16.1 (eth1的ip地址,也充当子网的网管)netmask 255.255.255.0# dns-* options are implemented by the resolvconf package, if installeddns-nameservers 218.2.135.1 61.147.37.1 (我们当地电信的DNS)三、配置pppoe拨号上网。使用代码:
3、$ sudo pppoeconf 进行配置,一路下一步,填写拨号用户名和密码就完事儿。设置好以后看看是否能上外网,使用 $ sudo apt-get update或upgrade都行。配置完毕后将/etc/ppp/options 中的lcp-echo-failure 4改为lcp-echo-failure 40,这样就不容易掉线。四、查看并启用ip转发功能。代码:$ cat /proc/sys/net/ipv4/ip_forward 如果结果返回值是0代表没有启用ip转发,就必须手工打开,打开方法为编辑/etc/sysctl.conf文件,将其中net.ipv4.ip_forward=1 前面
4、注释符号去掉,如果 vi不太会用建议使用nano 。代码:$ sudo nano /etc/sysctl.conf 返回结果为:(节选)# This disables TCP Window Scaling (http:/lkml.org/lkml/2008/2/5/167),# and is not recommended.#net.ipv4.tcp_syncookies=1# Uncomment the next line to enable packet forwarding for IPv4net.ipv4.ip_forward=1 (将前面的 #去掉)# Uncomment the n
5、ext line to enable packet forwarding for IPv6#net.ipv6.conf.all.forwarding=1保存后退出,重新启用networking。四、设置NAT 过程。利用iptables是个 简单的方法,不需要多少规则代码,如果以前没有配置过规则就简单的用一个命令。不过还是先手工试验一下参数是否正确再加入/etc/rc.local代码: $ sudo iptables -t nat -A POSTROUTING -s 192.168.16.0/24 -o ppp0 -j MASQUERADE如果返回没有任何出错信息就证明一切OK。这时候可以将代
6、码写进/etc/rc.local代码: $ sudo nano /etc/rc.local返回结果为:#!/bin/sh -e# rc.local# This script is executed at the end of each multiuser runlevel.# Make sure that the script will “exit 0“ on success or any other# value on error.# In order to enable or disable this script just change the execution# By default
7、 this script does nothing.# iptables -F (如果以前有 iptables规则则去掉注释,清除以前规则)# iptables -P INPUT ACCEPT (ip接收策略 允许)# iptables -P FORWARD ACCEPT (ip发送策略 允许)iptables -t nat -A POSTROUTING -s 192.168.16.0/24 -o ppp0 -j MASQUERADEexit 0最后一行解释:(iptables 允许nat转发,并且允许192.168.16.0192.168.16.254网段 转发至pppoe 拨号获得的动态 地址 实现地址转换)这样就可以完全使用ubuntu server当NAT路由了,由于没有加上DHCP,所以要将其他客户机分配地址,也就是设置ip 网关,dns等等。在单位测试完全正常。