内网服务器通过单台外网服务器实现外网访问,iptables NAT
环境:
servera: 外网服务器
serverb: 内网服务器
servera内网网关(GATEWAY)要设置为外网IP,其IP地址作为其它内网服务器的网关
servera 内网网卡配置
[root@localhost network-scripts]# cat ifcfg-team0
TEAM_CONFIG="{ \"runner\": { \"name\": \"activebackup\" } }"
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=team0
UUID=6d3ea3f4-4302-458b-9284-b2ea83f6285b
DEVICE=team0
ONBOOT=yes
DEVICETYPE=Team
IPADDR=192.168.109.110 # 内网网卡IP,作为其它内网服务器网关
PREFIX=24
GATEWAY=10.10.133.147 # 外网网卡IP,如果还需要配置其它内网网卡,网关都要设置为此IP
DNS1=114.114.114.114
servera 外网网卡配置
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=ens160
UUID=b58dbc36-1daa-43e9-9425-6b4d702cc41d
DEVICE=ens160
ONBOOT=yes
IPADDR=10.10.133.147 # 外网网卡IP
PREFIX=24
GATEWAY=10.10.133.1 # 外网网关
DNS1=114.114.114.114
serverb 网关(GATEWAY)为servera内网IP地址,配置网卡后需重启网卡生效
serverb 内网网卡配置
[root@192-168-109-115 network-scripts]# cat ifcfg-team0
TEAM_CONFIG="{ \"runner\": { \"name\": \"activebackup\" } }"
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=team0
UUID=3af1f9c7-ad26-4680-8245-29dee0ddcda0
DEVICE=team0
ONBOOT=yes
DEVICETYPE=Team
IPADDR=192.168.109.115
PREFIX=24
GATEWAY=192.168.109.110 # 服务器servera内网IP地址
DNS1=114.114.114.114
配置ipv4转发
修改servera配置文件/etc/sysctl.conf ,修改参数为1
net.ipv4.ip_forward = 1
配置生效: sysctl -p
配置servera使得serverb及其他内网服务器能访问外网
配置servera的iptables规则
[root@localhost network-scripts]# iptables -t nat -A POSTROUTING -s 192.168.109.0/255.255.255.0 -j SNAT --to-source 10.10.133.147
192.168.109.0/255.255.255.0 : 指整个网段都生效,也可单独指定serverb
以上配置后,通过IP能访问外网,使用域名则不行,即使配置了DNS解析服务器,还需要在servera执行
[root@localhost network-scripts]# iptables -I FORWARD 1 -s 192.168.109.0/24 -j ACCEPT
# 允许所有源地址在192.168.109.0/24的IP经过本机
保存规则,使得下次开机启动也生效
[root@localhost network-scripts]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]
# 如果有提示:Unit iptables.service could not be found. 则需安装iptables-services
内网服务器通过单台外网服务器实现外网访问,iptables NAT的更多相关文章
- 使用frp进行内网穿透,实现ssh远程访问Linux服务器
搭建一个完整的frp服务链需要: VPS一台(也可以是具有公网IP的实体机) 访问目标设备(就是你最终要访问的设备) 简单的Linux基础(如果基于Linux配置的话) 我这里使用了腾讯云服务器作为服 ...
- 单台DNS服务器搭建(BIND)
一.理论层面 1. DNS的出现及演化 网络出现的早期是使用IP地址通讯的,那是就几台主机通讯.但是随着接入网络主机的增多,这种数字标识的地址非常不便于记忆,UNIX上就出现了建立一个叫做hosts的 ...
- 单网卡用双IP上内外网
网络 2008-09-22 17:42 阅读44 评论1 字号: 大 中 小 PC机同时上内外网一例 一个公司内部,一台pc机在上内网的同时,还要求上外网,如何在一块网卡上实现 ...
- Linux小项目/rhel-基于同步官网yum仓库数据搭建本地yum服务器
本文的实验环境:aws上的Redhat 7.x , 同样也适用于Centos 7.x 简单说主要分为三步: (1) 向官网同步yum数据,可以根据具体情况,创建脚本及配置周期例行任务 (2) 搭建w ...
- 爬虫实战(二) 用Python爬取网易云歌单
最近,博主喜欢上了听歌,但是又苦于找不到好音乐,于是就打算到网易云的歌单中逛逛 本着 "用技术改变生活" 的想法,于是便想着写一个爬虫爬取网易云的歌单,并按播放量自动进行排序 这篇 ...
- Memcached解决单台服务器故障问题
<beitmemcached> <add key="name1" value="server1:port" /> <add key ...
- 不要将缓存服务器与Tomcat放在单台机器上,否则出现竞争内存问题
缓存分为本地缓存和远程分布式缓存,本地缓存访问速度更快但缓存数据量有限,同时存在与应用程序争用内存的情况. 1.不要将缓存服务器与Tomcat放在单台机器上,否则出现竞争内存问题 2.不要将缓存服务器 ...
- php的redis 操作类,适用于单台或多台、多组redis服务器操作
redis 操作类,包括单台或多台.多组redis服务器操作,适用于业务复杂.高性能要求的 php web 应用. redis.php: <?php /* redis 操作类,适用于单台或多台. ...
- 进阶!基于CentOS7系统使用cobbler实现单台服务器批量自动化安装不同版本系统(week3_day5_part2)-技术流ken
前言 在上一篇博文<cobbler批量安装系统使用详解-技术流ken>中已经详细讲解了cobbler的使用以及安装,本篇博文将会使用单台cobbler实现自动化批量安装不同版本的操作系统. ...
- cobbler单台服务器实现批量自动化安装不同版本系统-技术流ken
前言 在上一篇博文<cobbler批量安装系统使用详解-技术流ken>中已经详细讲解了cobbler的使用以及安装,本篇博文将会使用单台cobbler实现自动化批量安装不同版本的操作系统. ...
随机推荐
- selenium操作浏览器模块
selenium模块用途 selenuim原先多用于测试部门测试,由于它可以操作浏览器,有时候也用于爬虫领域 优点:操作浏览器访问网站 缺点:速度较慢 下载模块 # 下载模块 pip3 install ...
- 老外为了在MacBook上玩原神,让M1支持了所有iOS应用 | Github每周精彩分享第一期
大家好,这里是每周更新的Github有趣项目分享,我是每周都在吃瓜的蛮三刀酱. 我会从Github热门榜里选出 高质量.有趣,牛B 的开源项目进行分享. 废话不多说,看看最近有什么有意思的Github ...
- 简化 Python 日志管理:Loguru 入门指南
简化 Python 日志管理:Loguru 入门指南 在开发和维护软件项目时,高效的日志管理系统对于监控应用程序的行为.调试代码和追踪异常至关重要.Python 的标准日志模块虽然功能强大,但其配置和 ...
- 【GUI软件】小红书详情数据批量采集,含笔记内容、转评赞藏等,支持多笔记同时采集!
目录 一.背景介绍 1.1 爬取目标 1.2 演示视频 1.3 软件说明 二.代码讲解 2.1 爬虫采集模块 2.2 软件界面模块 2.3 日志模块 三.获取源码及软件 一.背景介绍 1.1 爬取目标 ...
- ITIL4 服务价值系统(SVS):一场服务管理的革新之旅
在这个数字化时代,每一家企业都在追求高效的服务管理和卓越的客户体验.今天,我们就来聊一聊ITIL4中的服务价值系统(Service Value System, SVS)--一个让服务管理变得更加直观和 ...
- oracle RDBMS Kernel Executable 占用内存过高
oracle RDBMS Kernel Executable 占用内存过高 参考:https://www.cnblogs.com/markkang/archive/2019/11/25/1192540 ...
- 大模型高效微调详解-从Adpter、PrefixTuning到LoRA
一.背景 目前NLP主流范式是在大量通用数据上进行预训练语言模型训练,然后再针对特定下游任务进行微调,达到领域适应(迁移学习)的目的. 指令微调是预训练语言模型微调的主流范式 其目的是尽量让下游任务的 ...
- NASM语法
NASM汇编语言的语法很简单,由4部分组成: label:instruction operands; comment 这4部分都是可选的.一条语句可以没有label,没有comment,甚至连inst ...
- JS基础--JavaScript实例集锦(初学)
1.子节点childNodes: <!DOCTYPE html> <html> <head> <title>childNodes</title&g ...
- CSS样式(第二篇)
CSS样式(第二篇) 关于定位position: li.widget {position: relative;}相对定位,设定一个参照物. @media (max-width: 980px) .t ...