将centOS变成路由服务器
众所周知,linux最强大的功能就是网络功能,但是学习linux却不仅仅是为了搭建服务器,鉴于linux是一套非常稳定的操作系统,用linux搭建各种服务器是不二的选择。
下面针对三种不同的上网环境,详细介绍一下在centOS 6.5上搭建一个路由服务器。
实验一:Linux为静态IP
实验环境示意图
图1 实验一环境
Step 1:配置linux网卡参数
本实验环境使用的linux硬件环境有两块网卡,分别为eth0和eth1。默认情况下,将eth0设为WAN口,将eth1设为LAN口,本实验也是如此。配置eth0和eth1有两种方式:一是可以编辑配置文件,二是直接可以利用图形界面对其进行配置。建议使用第一种,因为好多linux是没有X Window界面的。
WAN口(eth0)配置如下:
MAC地址XX:XX:6F:1E:XX:XX
IP地址 192.168.X.XXX
子网掩码 255.255.255.0
默认网关 192.168.0.254
DNS: X.X.X.X, 8.8.8.8
LAN口(eth1)配置如下:
IP地址 192.168.1.1
子网掩码 255.255.255.0
下面以配置eth0为例。
打开终端,获得root权限之后,输入命令 :
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
UUID=XXX…
ONBOOT=yes
NM_CONTROLLED=yes (NM_CONTROLLED是network manger的参数,实时生效,修改后无需要重启网卡立即生效)
BOOTPROTO=none
HWADDR=xxx…(网卡本身的硬件地址)
MACADDR= XX:XX:6F:1E:XX:XX
IPADDR=192.168.0.203
PREFIX=24(此语句可用‘NETMASK=255.255.255.0’替换)
GATEWAY=192.168.0.254
DNS1=X.X.X.X
DNS2=8.8.8.8
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME=”System eth0”
配置eth1时只需要将其IP地址设为192.168.1.1或者非eth0网段地址,其他不用配置。输入命令:
vim /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth0
TYPE=Ethernet
UUID=XXX…
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
IPADDR=192.168.1.1
NETMASK=255.255.255.0
Step 2:配置防火墙及NAT服务
防火墙的功能不多说了,不太明白的自己百度一下吧,在这里简要说一下NAT(Network Address Translation),即网络地址的转换,由于在本实验中eth0是public IP与eth1的private IP是不能互通的,NAT的功能就是使得这两者能相互通信。
在防火墙及NAT设置的时候,我们采用shell scripts来实现。想要学习shell脚本,可以看看鸟哥的私房菜里面的 。
首先建立一个文件夹,将脚本放置到/usr/local/virus/iptables文件目录下,也可以放置到自己习惯的位置。
mkdir –p /usr/local/virus/iptables (创建文件目录,-p允许你一次性创建多层目录)
cd /usr/local/virus/iptables
vim iptables.rule (利用vim编辑脚本文件,有关vim的使用请自行百度,快捷键太多)
以下就是脚本文件内容:
#!/bin/bash
# 输入相关参数
EXTIF="eth0" # Public IP
INIF="eth1" # 內部 LAN 的private IP,没有填 ""
INNET="192.168.1.0/24" # 內部 LAN 的网段,没有填 ""
export EXTIF INIF INNET
# 第一部部分linux使用vim编辑文件,针对本机的防火墙设定!>>>>>##
# 1. 先设定好核心的网络功能:
echo "1" > /proc/sys/net/ipv4/tcp_syncookies
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
for i in /proc/sys/net/ipv4/conf/*/rp_filter; do
echo "1" > $i
done
for i in /proc/sys/net/ipv4/conf/*/log_martians; do
echo "1" > $i
done
for i in /proc/sys/net/ipv4/conf/*/accept_source_route; do
echo "0" > $i
done
for i in /proc/sys/net/ipv4/conf/*/accept_redirects; do
echo "0" > $i
done
for i in /proc/sys/net/ipv4/conf/*/send_redirects; do
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
vim字符串替换及小技巧
« 上一篇
桂电期末考试Linux习题总结
下一篇 »
发表评论