玩转Linux网络namespace 单机自环测试与策略路由

本文介绍了如何利用Linux的网络namespace进行单机自环测试和策略路由,通过创建虚拟网络设备并结合IP转发,实现在没有物理网卡的情况下模拟网络隔离。文中还强调了在使用netns时要注意网络隔离与共享文件系统之间的平衡,同时提供了详细的命令示例。
摘要由CSDN通过智能技术生成

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

                上周有厂商到公司测试,拿了一块据说很猛的网络处理加速PCIe板卡,拎在手里沉甸甸的很有分量,最让人意淫的是那4个万兆光口,于是我迫不及待的想要一览光口转发时那种看不见的震撼。
       可是,仅凭4个光口怎么测试?起码你要有个“对端”啊!任何人应该都不想扛着三台机器在客户们之间跑来跑去测试其转发性能,当然你也不能指望客户那里就一定有你需要的“对端”设备,比如我们公司就没有这种和万兆光口对接的设备,不过赶巧的是,那天还真有一台设备带有万兆光口,但是只是碰巧了。最佳的测试方式当然是不依赖任何外部设备了,显而易见的方法就是做自环。
       RJ45口的双绞线可以做物理层自环,1/3,2/6短接即可,这样一台机器的一块网卡自己就可以既发又收了,但是你能对比头发略粗的光纤做什么呢?真实的做法当然是用软件解决了,在Linux上可以使用netns来解决,即net namespace。
       netns是一个很好玩的东西,它可以让你在一台机器上模拟多个网络设备,这样做的意义是非同一般的:
1.使用netns可以充分利用闲置的处理器资源,特别是你的多块网卡性能压不满CPU的时候;
2.使用netns可以将不同类型的网络应用隔离,针对每一类实施不同的策略;
3.使用netns有点玩虚拟化的意思,不过比虚拟机更灵活。
一个net namespace有自己独立的路由表,iptables策略,设备管理机构,和其它的netns完全隔离,比如你将eth0加入了netns1,那么netns2中的应用程序就看不到eth0,网卡设备管理只是netns中的一个元素,还有很多,比如你在netns1中配置的iptables策略对netns2中的数据包没有任何影响。总之,如果你懂Linux内核源码,那么只要附着有net结构体字段的那些结构,比如skb,net_deviceÿ
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值