1. 环境

  • 拓扑:

  • 网卡配置:

    • host1: 192.168.1.1/24
    • host2:

      左eth0: 192.168.1.2/24
      右eth1: 192.168.2.2/24

    • host3: 192.168.2.1/24

2. 需求描述

需要实现主机host1能够与host3直接通信。

3. 转发主机host2配置

3.1 开启内核路由转发参数

  • 临时生效:

    echo "1" > /proc/sys/net/ipv4/ip_forward
    
    • 1
  • 永久生效:
    修改sysctl.conf: net.ipv4.ip_forward = 1
    再执行sysctl -p立即生效

3.2 配置路由表

配置路由表,添加静态路由规则

  • 增加192.168.1.0/24网段路由配置信息
    route add -net 192.168.1.0 netmask 255.255.255.0 dev eth0
    
    • 1
  • 增加192.168.2.0/24网段路由配置信息
    route add -net 192.168.2.0 netmask 255.255.255.0 dev eth1
    
    • 1
  • 查看路由表是否完成配置
     route
    
    • 1

3.3 配置防火墙iptables(重要!)

这里的iptables其实不是真正的防火墙,官方给出的主要特点是:

  • 列出包筛选器规则集的内容;
  • 在包过滤规则集中添加/删除/修改规则;
  • 列出/归零包筛选规则集的每条规则计数器

具体iptables的介绍可以参看iptables详解(1):iptables概念。

进入正题,输入iptables -list查看Filter表,里面含三个链:

INPUT链:处理来自外部的数据。
OUTPUT链:处理向外发送的数据。
FORWARD链:将数据转发到本机的其他网卡设备上。

# iptables –list 

Chain INPUT (policy ACCEPT)

num target prot opt source destination

1 xxx all — 0.0.0.0/0 0.0.0.0/0 Chain FORWARD (policy DROP)

num target prot opt source destination

1 xxx all – 0.0.0.0/0 0.0.0.0/0 Chain OUTPUT (policy ACCEPT)

num target prot opt source destination

1 xxx all – 0.0.0.0/0 0.0.0.0/0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

需要注意,如果想要linux主机支持转发,则需要开启内核的IP_FORWARD功能。
检查iptables如果发现Chain FORWARD (policy DROP)这行中的策略(policy)是DROP,则需要修改成为ACCEPT,方法为:

# iptables -t FORWARD -P ACCEPT
  • 1

3.4 重启服务

重启network服务和iptables服务:

# service network restart
# service iptables restart
  • 1
  • 2

至此,可以实现host2的路由转发,使host1与host3能够相互通信。

按:
博客中提及的问题是实验室的师弟师妹搭环境时遇到的,当时的环境是在一台主机上通过VMware虚拟机开启host1和host2(都是centos系统),host2配置了一个虚拟网卡连接host1,同时通过网桥的形式配置了另外一个网卡连接另一台物理主机host3。当时在网上找了很多配置方法的介绍,但几乎都只有3.1和3.2步的介绍,导致host1和host3始终连不起来。最后才发现问题出在iptables中FORWAED的策略是DROP。。。

文章知识点与官方知识档案匹配,可进一步学习相关知识
云原生入门技能树首页概览15375 人正在系统学习中

[转帖]linux系统主机双网卡实现路由转发问题与解决的更多相关文章

  1. Linux下双网卡绑定(bonding技术)

    Linux网卡绑定探析   2013-08-20 15:39:31 现在很多服务器都自带双千兆网口,利用网卡绑定既能增加网络带宽,同时又能做相应的冗余,目前应用于很多的场景.linux操作系统下自带的 ...

  2. Linux绑定双网卡

    Linux绑定双网卡 1. 配置参数文件 版本在centos6以下在/etc/modproe.conf文件中配置,版本是centos6.x或以上在/etc/modproe.d/目录下配置. 2.    ...

  3. Linux下双网卡Firewalld的配置流程

    实验室拟态存储的项目需要通过LVS-NAT模式通过LVS服务器来区隔内外网的服务,所以安全防护的重心则落在了LVS服务器之上.笔者最终选择通过firewalld放行端口的方式来实现需求,由于firew ...

  4. Linux下双网卡绑定bond0

    一:原理: linux操作系统下双网卡绑定有七种模式.现在一般的企业都会使用双网卡接入,这样既能添加网络带宽,同时又能做相应的冗余,可以说是好处多多.而一般企业都会使用linux操作系统下自带的网卡绑 ...

  5. (转)深度分析Linux下双网卡绑定七种模式

    现在一般的企业都会 使用双网卡接入,这样既能添加网络带宽,同时又能做相应的冗余,可以说是好处多多.而一般企业都会使用linux操作系统下自带的网卡绑定模式,当然现在 网卡产商也会出一些针对window ...

  6. 深度分析Linux下双网卡绑定七种模式

    现在一般的企业都会使用双网卡接入,这样既能添加网络带宽,同时又能做相应的冗余,可以说是好处多多.而一般企业都会使用linux操作系统下自带的网卡绑定模式,当然现在网卡产商也会出一些针对windows操 ...

  7. Linux双线双网卡双IP双网关设置方法

    机房上架了一台测试机,系统是Ubuntu 9.04 X64的系统,母机IBM X336机器.用户需求是双线,故采用一个网卡配置电信地址,另一个网卡配置联通地址,安装好系统后配置好IP发现联通地址和电信 ...

  8. Linux下双网卡绑定bond0【转】

    一:原理: linux操作系统下双网卡绑定有七种模式.现在一般的企业都会使用双网卡接入,这样既能添加网络带宽,同时又能做相应的冗余,可以说是好处多多.而一般企业都会使用linux操作系统下自带的网卡绑 ...

  9. Linux系统配置双网卡绑定bond0

    1.bonding简述 双网卡配置设置虚拟为一个网卡实现网卡的冗余,其中一个网卡坏掉后网络通信仍可正常使用,实现网卡层面的负载均衡和高可用性.现在一般的企业都会使用双网卡接入,这样既能添加网络带宽,同 ...

  10. linux下双网卡双网关配置

    要求: eth0:192.168.100.203 连接内网,网关为192.168.100.1.需要和192.168.10.0.192.168.12.0.192.168.100.0.10.2.2.0.1 ...

随机推荐

  1. MySQL|空间碎片化问题处理

    一.空间碎片化严重案例分享 1.1 问题描述 实例磁盘空间近1个月上涨趋势明显,主要是个别日志表存储较大且部分表存在空间碎片化的现象. 1.2 处理流程 1.通过日常巡检以及监控发现某实例磁盘空间近1 ...

  2. 《语义增强可编程知识图谱SPG》白皮书

    语义増强可编程图谱框架:新一代知识图谱语义框架/引擎.SPG+LLM双驱架构及应用相关进展和应用.<语义增强可编程知识图谱SPG>白皮书 v1.0.pdf: https://url39.c ...

  3. 【华为云技术分享】空间异常即刻诊断,华为云数据管理服务DAS又出新招

    摘要:华为云数据管理服务DAS提供的云DBA智能化运维平台于日前发布了空间&元数据分析特性,支持查看实例空间异常列表.实例空间概况.数据库列表信息,帮助用户及时发现数据库中的空间和元数据异常, ...

  4. SAM适配下游任务的探究:SAM Adapter

    本文分享自华为云社区<SAM适配下游任务的探究:SAM Adapter>,作者:Hint. 近期大模型的涌现给AI研究带来显著的发展,META的工作Segment Anything(SAM ...

  5. AI开发实践丨客流分析之未佩戴口罩识别

    摘要:通过本教程,我们可以学习客流统计应用的扩展--过线客流统计+口罩佩戴识别,可用于商超.写字楼入口安检. 本文分享自华为云社区<客流分析之未佩戴口罩识别>,作者: HiLens_fei ...

  6. 干货分享丨从MPG 线程模型,探讨Go语言的并发程序

    摘要:Go 语言的并发特性是其一大亮点,今天我们来带着大家一起看看如何使用 Go 更好地开发并发程序. 我们都知道计算机的核心为 CPU,它是计算机的运算和控制核心,承载了所有的计算任务.最近半个世纪 ...

  7. AUC/ROC:面试中80%都会问的知识点

    摘要:ROC/AUC作为机器学习的评估指标非常重要,也是面试中经常出现的问题(80%都会问到) 本文分享自华为云社区<技术干货 | 解决面试中80%问题,基于MindSpore实现AUC/ROC ...

  8. 鲲鹏基础软件开发赛道openLooKeng赛题火热报名中,数十万大奖等您来收割

    随着云计算.物联网.移动计算.智慧城市.人工智能等领域的发展,各类应用对大数据处理的需求也发生着变化.以实时分析.离线分析.交互式分析等为代表的计算引擎逐渐为各大企业行业发展所看重.作为鲲鹏产业生态的 ...

  9. Solon 开发调试时能热更新吗?

    1.调试模式 开启"调试模式"后,支持动态模板文件.静态资源文件可以实现动态更新.增加启动参数即可开启: --debug=1 使用 solon-test 进行单元测试时,会自动添加 ...

  10. LinkedBlockingQueue实现的生产者和消费者模型

    首先 LinkedBlockingQueue 是线程安全的阻塞队列,LinkedBlockingQueue实现的生产者和消费者模型 阻塞队列与我们平常接触的普通队列(LinkedList或ArrayL ...