数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 25227|回复: 31

软路由(1)之opnsense

[复制链接]
发表于 2020-6-8 17:40:19 | 显示全部楼层
原来老子一直追不到女人就是这种原因。。。
回复 支持 1 反对 0

使用道具 举报

发表于 2020-6-8 18:06:41 | 显示全部楼层
出入口好像不是这么理解的。
我们不是专业人员,暂且这样称呼:
数据进入网关称为入站,进入的接口,称为入口;
所以数据从PC进入网关(路由再离开网关出去互联网)的、数据从互联网进入网关(经过路由再出来流向PC),都是入口、数据从PC进入网关,又从网关进入另一个本地PC的地方,也是入口。而不是仅仅从互联网进来的才叫入口。更不是WAN和LAN来区分。WAN和LAN都经过入口,数据流向由网关根据数据的性质来导向。
数据从网关离开进入互联网的地方,称为出口。但是数据从PC进入网关,又出来进入另一个本地PC,却不经过出口,因为数据不经过转发。
出入口不是实体的网口,是一个虚拟层面的数据接口。

亦即是:凡是进入网关的数据都经过入口,不管外网还是内网来的;凡是离开网关进入外网的数据都经过出口;凡是从内网到相同内网的数据,都经过入口却不经过出口。

打赏

参与人数 2家元 +34 收起 理由
fengchen_mdc + 4 我觉得是网口相对于cpu来讲,可以看看iptab.
wuxiandianzi + 30 专业

查看全部打赏

回复 支持 2 反对 0

使用道具 举报

发表于 2020-6-10 12:38:18 | 显示全部楼层
本帖最后由 wulishui 于 2020-6-10 13:15 编辑
fengchen_mdc 发表于 2020-6-10 09:50
从网口到cpu(内核),正向为input,反向为output,从一个口进另一个口出为forward
dport目的端口,sport ...

网口到cpu那叫做“接口”,数据流是双向的,没有一个口进一个口出的做法,是属于另一个层面的概念。和入口出口毛关系都没有。
入口出口是属于iptables或其他什么tables的叫法。不仅仅只有iptables一种。
但在iptables,凡是进来的数据都经过input(即“入口”)。无论外网还是内网数据,在input上drop的话都生效。
只有一个入口一个出口,哪有什么一个口进另一个口出!只有内网到外网的数据才经过forward,内网到内网的数据不经过forward。你要是不明白,直接在内网传文件,iptables -L -nv看看forward有无流量!并且,你在forward或output上drop看看能不能drop掉!
在iptables上就是这样:凡是进入网关的数据都经过入口,不管外网还是内网来的;凡是离开网关进入外网的数据都经过出口;凡是从内网到相同内网的数据,都经过入口却不经过出口。
所有数据,在input上drop都有效;内网至外网数据,在input、forward、output上drop都有效;内网至内网的数据,只在input上drop有效(因为不经过forward或output)。

我虽不是专业人员,但我在openwrt上写了七八个插件了,基本上都和iptables有关,而且专钻牛角尖,做别人没有的插件,功能史上独一无二的:https://www.right.com.cn/forum/thread-928319-1-2.html
入口出口不是硬存在的,也不是单独分出来一个进一个出,入或出指的是数据流向,不是洞口。之所以叫做入口出口,只是将一个无限烧脑无形无象无色无味、让人脑细胞错乱抽象的“东西”用实体化的词来形容,看起来易懂一些。网关内部数据满天飞,就好像太空中的垃圾一样,哪里能做入口出口两个狗洞让它们钻。该怎么走向由路由规则去管理,去哪里的数据就装到哪个箩筐里扔到哪个地方,由外面的人来抬走,但是抬进来和扔出去的门口都是一个的,只有扔的方向的区别。就和你镇上的快递站差不多,发件取件都是那个门口,哪里还专门开一个入口一个出口给你。发件叫做入站,派件叫做出站,只是方向性的区别,都是那个门口。而两个人约定在那里交换包裹,那么只用入站,不出站,因为不用派件或发件,只需要跟站长说一声就行,这就是内网数据交换不经过forward,也不用output。

回复 支持 反对

使用道具 举报

发表于 2020-6-10 13:36:02 | 显示全部楼层
本帖最后由 wulishui 于 2020-6-10 13:43 编辑

用快递站形容再形象不过了:
上级下发的件、用户发送的件,都需要“入站”登记,这个途径称之为“入口”。
站点里面的件到底需要上传给上级还是派送本地,由包裹上的标记来触动相关的规则。
用户发送的件,都需要上传到上级,这个途径称之为“出口”。
而用户约定送件到站点,让另一个人拿走,那么只用“入口”登记,不用派送也不用上传,所以没有“出口”。
“入口”、“出口”是站在站点内部管理者角度叫的,而不是站在你们用户角度叫的。而入口出口这实际上是一种方向性行为,不是设立的两个“洞口”,这只是他们站长用这两个词来叫而已。
网关内部就是这个站点内部。实际上它整个系统只有一个“门口”。它并没有设计“入口”、“出口”两个门口。

打赏

参与人数 1家元 +20 收起 理由
wuxiandianzi + 20 这个形容比较贴切

查看全部打赏

回复 支持 反对

使用道具 举报

发表于 2020-6-11 12:03:31 | 显示全部楼层
另外英文语言版有入或出,没有入“口”出“口”,翻译成中文就成了入口出口,本来说的是数据两个流向,到了中国人眼里就成了出入两个洞口,九唔搭八。
回复 支持 1 反对 0

使用道具 举报

发表于 2020-6-11 12:19:26 | 显示全部楼层
本帖最后由 wulishui 于 2020-6-11 12:33 编辑
fengchen_mdc 发表于 2020-6-10 22:49
我说的入口是通讯发起端,出口是通讯接收端
内网数据不用forward是因为在交换芯片上或者网桥上,况且网桥 ...

说明一下,所说的内网指的是同网段,即最单纯的路由结构。另外说明,说的是iptables,不是ebtables或者nftables。iptables也没有接收端发送端之分,只有数据流向。因为iptables处在数据链的中间环节,只管数据的处理,不管收据的收发。所谓的数据收发端,很明显这不在iptables范畴。数据收发接口那边的事情。换句话说,iptables就像路中间的交警,他只管把路过的车拦下来看看、给你车登记、贴标签、开罚单,如果有指令,他也可以查你车是那条道上来,要到哪里去,引导你怎么受处理,但是他才不管在公寓门口把大爷您扶上车,在餐厅门口把大小姐送送进包厢。
如要非要执拗,母牛都可以有屌,看你想不想它有或者你是不是认为它有。
iptables数据有出和入两种方向,完全就没有“口”,所谓的口是国人翻译过来的,望文生义以为是两个门口。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-6-17 00:48 , Processed in 0.187201 second(s), 10 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表