Linux系统配置成简单的路由器
一、两个不同网段的子网相互访问或通信
废话不多说了,直接上图,一目了然吧。
按照如图配置,就可以实现两个不同网段的子网相互通信。
二、连接上网的配置:
如果想让这两个子网,不仅可以相互通信,而且还可以连接到Ineternet。那就需要三块网卡:
一台机器PC1配置三块网卡eth0、eth1和eth2.eth0连接外网,eth1和eth2分别连接两个不同网段的子网。假定192.168.0.3连接外网,网关为192.168.0.1.PC2为一个网卡接入内网,IP为192.168.1.2,网关为192.168.1.1
PC3为一个网卡接入另一个子网,IP:192.168.2.2,网关为192.168.2.1.
现在想PC2和PC3想通过PC1不仅可以相互通信还可以连接,上网。
1.首先要打开PC1的IP转发功能,默认是关闭的。可用下面命令检查:
more /proc/sys/net/ipv4/ip_forward
如果显示为0,则是关闭的,需要打开,
echo 1>/pro/sys/net/ipv4/ip_forward
由于该命令只是暂时打开转发,为了防止重启配置失效,需要进行如下配置:
vim /etc/sysctl.conf
将其中net.ipv4.ip_forward=1前面的注释去掉。然后运行
立即生效,或者重启。
为PC1进行如下设置:
vim /etc/network/interface auto eth0
iface eth0 inet static
address 192.168.0.3
netmask 255.255.255.0
gateway 192.168.0.1 auto eth1
iface eth1 inet static
address 192.168.1.1
netmask 255.255.255.0 auto eth2
iface eth2 inet static
address 192.168.2.1
netmask 255.255.255.0
重启网络:
$ sudo /etc/init.d/networking restart
你也可以使用route命令来添加,如下所示
route add -net 192.168.1.0/24 dev eth1
route add -net 192.168.2.0/24 dev eth2
2.PC2和PC3需要将缺省网关分别设置为PC1eth1的ip和PC1eth2的ip:
#PC2
vim /etc/sysconfig/network auto eth0
iface eth0 inet static
address 192.168.1.2
netmask 255.255.255.0
gateway 192.168.1.1 #PC3
vim /etc/sysconfig/network auto eth0
iface eth0 inet static
address 192.168.2.2
netmask 255.255.255.0
gateway 192.168.2.1
重启网络:
$ sudo /etc/init.d/networking restart
3.注意,当时就是忘了这个命令,弄了很久:
$ sudo iptables -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -j MASQUERADE $ sudo iptables -t nat -A POSTROUTING -o eth0 -s 192.168.2.0/24 -j MASQUERADE
此刻,一个简单的不同网段相互通信,并且能够连接互联网,小型的路由器就这样完成了。
Linux系统配置成简单的路由器的更多相关文章
- Linux系统配置VSFTP软件详解
Linux系统配置VSFTP软件详解 出处 http://www.sudu.cn/service/detail.php?id=11656 vsftpd.conf 是vsftpd的配置文件,用来控制vs ...
- Linux系统配置VI或VIM的技巧
Linux系统配置VI或VIM的技巧作者:IT专家网论坛出处:IT专家网论坛2008-10-28 11:08配置VI和VIM的颜色显示,使它能够高亮度显示一些特别的单词,这对编写程序很有用⋯⋯ 1.V ...
- 【玩转开源】BananaPi R2 —— 第三篇 基于Openwrt开发一个简单的路由器
上一篇讲解了R2的网口配置,这一篇我们以BananaPi R2为例子来实现一个简单的路由器:那么一个简单的路由器应该具备什么样的功能呢?最简单的说就是wan+lan+ap这三个功能. 首先wan+la ...
- LINUX系统配置
LINUX系统配置 Linux 安装jdk方法; Linux Tomcat 安装与配置 Linux redis 安装与配置 (例1) Linux redis安装配置(例2) NGINX 安装 Linu ...
- Linux curl使用简单介绍
在两台新搬迁的微信服务器上执行命令: curl -H "Content-Type: application/json" -d '{"partner_no":&q ...
- Linux下一个简单的日志系统的设计及其C代码实现
1.概述 在大型软件系统中,为了监测软件运行状况及排查软件故障,一般都会要求软件程序在运行的过程中产生日志文件.在日志文件中存放程序流程中的一些重要信息, 包括:变量名称及其值.消息结构定义.函数返回 ...
- [转帖] Linux 创建一个简单的私有CA、发证、吊销证书
原创帖子地址: https://blog.csdn.net/mr_rsq/article/details/71001810 Linux 创建一个简单的私有CA.发证.吊销证书 2017年04月30 ...
- Linux——帮助命令简单学习笔记
Linux帮助命令简单学习笔记: 一: 命令名称:man 命令英文原意:manual 命令所在路径:/usr/bin/man 执行权限:所有用户 语法:man [命令或配置文件] 功能描述:获得帮助信 ...
- Linux守护进程简单介绍和实例具体解释
Linux守护进程简单介绍和实例具体解释 简单介绍 守护进程(Daemon)是执行在后台的一种特殊进程.它独立于控制终端而且周期性地执行某种任务或等待处理某些发生的事件.守护进程是一种非常实用的进程. ...
随机推荐
- Ubuntu 中使用 谷歌日历
简介 对于经常使用待办类软件的人来说,谷歌日历是个不错的选择.但每次,都要登录网页去查看,对于我这样的懒人来说似乎麻烦了些. 所以在网上找了个叫做 Calendar Indicator 的软件. 效果 ...
- 数学(FFT):BZOJ 3527 [Zjoi2014]力
题目在这里:http://wenku.baidu.com/link?url=X4j8NM14MMYo8Q7uPE7-7GjO2_TXnMFA2azEbBh4pDf7HCENM3-hPEl4mzoe2w ...
- 数据结构(Splay平衡树):COGS 339. [NOI2005] 维护数列
339. [NOI2005] 维护数列 时间限制:3 s 内存限制:256 MB [问题描述] 请写一个程序,要求维护一个数列,支持以下 6 种操作:(请注意,格式栏 中的下划线‘ _ ’表示实际 ...
- Search in Rotated Sorted Array II——LeetCode
Follow up for "Search in Rotated Sorted Array":What if duplicates are allowed? Would this ...
- HDOJ(HDU) 2106 decimal system(进制相互转换问题)
Problem Description As we know , we always use the decimal system in our common life, even using the ...
- cf703C Chris and Road
C. Chris and Road time limit per test 2 seconds memory limit per test 256 megabytes input standard i ...
- HDU4099 Revenge of Fibonacci(高精度+Trie)
Revenge of Fibonacci Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 204800/204800 K (Java/ ...
- C++排序
浅谈C++之冒泡排序.希尔排序.快速排序.插入排序.堆排序.基数排序性能对比分析(好戏在后面,有图有真相) 最近一段时间去武汉参加了N多笔试,在几次试题中都出现了排序.偏偏出现了我没怎么看的插入排序, ...
- 嵌套fragment时必须要重写 onDetach()
/** * 嵌套fragment时必须要重写 onDetach()如下 */ @Override public void onDetach() { super.onDetach(); ...
- 在eclipse下编译hadoop2.0源码
Hadoop是一个分布式系统基础架构,由apache基金会维护并更新.官网地址: http://hadoop.apache.org/ Hadoop项目主要包括以下4个模块: Hadoop Common ...