CentOS搭建NAT和DHCP服务,实现共享上网

栏目: 服务器 · 发布时间: 7年前

内容简介:什么是NAT?NAT(Network address translation)即网络地址转换,作为一种过渡解决手段,可以用来减少对全球合法IP地址的需求。简单的说,NAT就是在内部专用网络中使用内部地址,而当内部节点要与外界网络发生联系时,就在边缘路由器或者防火墙处,将内部地址转换成全局地址,从而使得在外部公共网(Internet)上使用一个和数个合法IP地址正常传输数据。其中,这里的外网和内网是相对来讲的,下面假设能够访问互联网的网络为外网。

什么是NAT?

NAT(Network address translation)即网络地址转换,作为一种过渡解决手段,可以用来减少对全球合法IP地址的需求。简单的说,NAT就是在内部专用网络中使用内部地址,而当内部节点要与外界网络发生联系时,就在边缘路由器或者防火墙处,将内部地址转换成全局地址,从而使得在外部公共网(Internet)上使用一个和数个合法IP地址正常传输数据。

其中,这里的外网和内网是相对来讲的,下面假设能够访问互联网的网络为外网。

什么是DHCP

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。

实验环境

VMware Workstations

一台最小化安装的CentOS7,外网IP(NAT模式):192.168.204.133,内网网卡vmnet10(相当于仅主机模式,且不自动获取IP)

一台Windows7,内网网卡vmnet10(相当于仅主机模式,且不自动获取IP)

CentOS搭建NAT和DHCP服务,实现共享上网

检查网络连通性

CentOS上执行以下命令:

# 检查centos到互联网的网络连通性

ping -c 4 www.baidu.com

ifconfig

CentOS搭建NAT和DHCP服务,实现共享上网

查看 linux 上的网卡配置信息,本文中默认ens33为外网网卡,ens37为内网网卡

关闭防火墙

setenforce 0

systemctl stop firewalld

systemctl disable firewalld

配置内网网卡

vim /etc/sysconfig/network-scripts/ifcfg-ens37

添加如下内容

TYPE="Ethernet"

BOOTPROTO="static"

NAME="ens37"

DEVICE="ens37"

ONBOOT="yes"

IPADDR="192.168.0.1"

NETMASK="255.255.255.0"

DNS1="223.5.5.5"

重启网卡

systemctl restart network

开启Linux路由功能

iptables -A FORWARD -i ens37 -j ACCEPT

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o ens33 -j MASQUERADE

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

cat /proc/sys/net/ipv4/ip_forward

解释(ens37为内网网卡,ens33为外网网卡):

第一条命令:让发送至内网网卡的数据全部通过

第二条命令:修改数据报头信息

第三条命令:开启Linux的路由功能

第四条命令:查看是否启用了路由功能,1代表启用,0代表禁用

具体命令需要根据自己的网卡名称进行修改

执行以下命令,设置开机自动配置 Linux路由功能

echo -e "

iptables -A FORWARD -i ens37 -j ACCEPT

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o ens33 -j MASQUERADE

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

" >> /etc/rc.local

chmod +x /etc/rc.local

安装配置DHCP服务

安装DHCP服务

yum install -y epel*

yum install -y dhcp

复制DHCP配置文件

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

编辑并修改dhcpd.conf配置文件

vim /etc/dhcp/dhcpd.conf

查找并修改option domain-name项,修改为vmnet.com

查找并修改option domain-name-servers项,修改为223.5.5.5, 114.114.114.114

配置文件内容如下

CentOS搭建NAT和DHCP服务,实现共享上网

# A slightly different configuration for an internal subnet.

subnet 192.168.0.0 netmask 255.255.255.0 {

range 192.168.0.10 192.168.0.100;

option domain-name-servers 223.5.5.5, 114.114.114.114;

option domain-name "vmnet.com";

option routers 192.168.0.1;

option broadcast-address 192.168.0.255;

default-lease-time 600;

max-lease-time 7200;

}

逐行进行解释

#subnet后跟子网网段,netmask后跟子网掩码

subnet 192.168.0.0 netmask 255.255.255.0 {

#地址池

range 192.168.0.10 192.168.0.100;

#DNS服务器地址(多个地址用","隔开)

option domain-name-servers 223.5.5.5, 114.114.114.114;

#为所分配的域分配域名

option domain-name "vmnet.com";

#为所分配的主机分发子网掩码

option subnet-mask 255.255.255.0;

#分发默认网关

option routers 192.168.0.1;

#分发广播地址

option broadcast-address 192.168.0.255;

#默认租期时间(秒)

default-lease-time 600;

#最大租期时间(秒)

max-lease-time 7200;

}

启动DHCP服务

systemctl restart dhcpd

systemctl enable dhcpd

查看启动状态

systemctl status dhcpd

netstat -uap | grep dhcpd

查看Windows7上的网络信息

禁用网卡,重新启动,查看网卡信息]

CentOS搭建NAT和DHCP服务,实现共享上网

CentOS搭建NAT和DHCP服务,实现共享上网

检查访问互联网的连通性

CentOS搭建NAT和DHCP服务,实现共享上网

可以正常访问百度

CentOS搭建NAT和DHCP服务,实现共享上网

Linux公社的RSS地址: https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址: https://www.linuxidc.com/Linux/2018-07/153294.htm


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

随意搜寻

随意搜寻

Peter Morville / 沈浩翔 / 华中科技大学出版社 / 2013-10-1 / CNY 68.00

在这个信息爆炸的年代,我们如何找到出路?在纷繁交错的信息流中,我们如何筛选出想要的信息?既然Google已经魔法般地将正确答案呈现在我们面前,为什么信息架构的方式依然重要? 《Web信息架构》的作者Peter Morville,用了10年时间回答以上问题。《随意搜寻》是 一趟奇妙的旅程,让未来触手可及:无论何时何地,我们都能找到任何人、任何东西。这本书即是路线图,也是信息时代的“玛雅预言”,......一起来看看 《随意搜寻》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具