Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

编写一个Linux虚拟网卡来实现类NVI

编写一个Linux虚拟网卡来实现类NVI

我们可以在Linux上使用loopback接口来模拟两个阶段的路由抉择,第一个阶段是走一遍PRE/POST ROUTING流程,将NAT实施完毕,第二阶段完成单纯路由转发。然而需要在Netfilter上挂钩子,以便取消关联在skb上的路由项,并且取消关联在skb上的conntrack信息,因为在第二阶段的单纯路由流程里面,我不希望再有什么基于conntrack的动作,因此如果需要有基于conntrack的操作,务必在第一阶段内和NAT一并完成。回过头来看l...
用IP地址的用途理解Loopback接口

用IP地址的用途理解Loopback接口

1.问题IP地址到底是属于主机的还是属于网卡的?这个问题有点太学院派了,现实中,只要懂得IP地址的概念以及IP路由,基本上没有问题。IP作为一个网络层协议,它更多的意义在于寻址而不是标识主机,因此你可以认为IP是属于网卡的。然而不同的人对于IP地址有不同的看法,程序员看来,IP地址是属于主机的,因为他们总是用一个套接字来表示一个服务,套接字中的IP地址表示一台主机,协议和端口号表示了该主机上的一个特定进程;对于网络工程师而言,他们会认为IP地址是属于一个网...
闲聊计算机IP网络

闲聊计算机IP网络

记得刚上第一节《计算机网络》课的时候,下课时就记得网络分为通信子网和资源子网,当时觉得这是多么的教条,时隔多年以后,再来回味这个通信子网和资源子网的划分,还真是能牵扯出来不少东西呢...通信子网和资源子网的划分是横向的划分,而纵向的划分就是诸协议栈。什么是通信子网呢?通信子网就是负责网络交通的子网,它的任务就是路由寻址。什么是资源子网呢?资源子网中存储资源数据。一般而言,处在末梢端的网络都是资源子网,主干部分的则是通信子网。这么解释还是太教条了,如果理解了...
Gedit插件:Embedded Terminal,让你在编辑器内使用命令行终端

Gedit插件:Embedded Terminal,让你在编辑器内使用命令行终端

有时候在Linux上使用基于GUI的程序,你必须在程序窗口和命令行窗口之间切换。这会消耗一些时间。将一个终端窗口嵌入到程序窗口内部是个很好的解决方案。我不知道在其他程序是否可以,但是,如果你为gedit寻找一个这样的解决方案,那么这儿有一个插件-- Embedded Terminal -- 能让你从gedit窗口内部访问命令行终端。相关阅读:Linux终端命令——显示文件内容 http://www.linuxidc.com/Linu...
Subeclipse验证失败的问题-已解决

Subeclipse验证失败的问题-已解决

最近Mac下面重新布置了一下开发环境,遇到一些问题,顺便记录一下。PS:慢慢养成随手写博客的习惯吧,以便日后查看,话说这次重装MyEclipse之后,连怎么破解都没有思路了,搜了半天,原来破解过N次了 >..<继续正题:建立版本库(原来Mac自带SVN服务)svnadmin create /**版本目录路径**/配置文件--svnserve.conf [general] anon-access = none //禁止匿名访问 auth-acce...
Ubuntu下如何给通过HDMI连接电视机的计算机强制设置1920*1080分辨率

Ubuntu下如何给通过HDMI连接电视机的计算机强制设置1920*1080分辨率

xrandr只能设置一些已经存在的,如果本身在选择列表中不存在怎么办呢?xrandr 查看现在系统中所有的分辨率,如果没有需要创建该新模式,并添加给对应设备,最后应用。但是这样如果重启Ubuntu机器后,分辨率会还原。所以需要再usr/bin/startFX.sh中将刚才的3个步骤的命令配置在这里。然后重启机器就可以了。具体如下:(1)得到所需的更改分辨率数据:cvt 1920 1080# 1440x900 59.89 Hz (CVT 1.30MA) hs...
Linux NAT基本流程与实现技巧

Linux NAT基本流程与实现技巧

基于matches的NATLinux的NAT是基于match的,即在满足一系列条件的前提下执行SNAT或者DNAT,因此要求也就比较宽松,唯一的约束就是路由,即路由动作发生的时候,必须是基于最终的目标IP地址,因此DNAT必须发生在路由之前(对于本机发出的数据包,则在路由之后,然后重新路由),如下图所示附:Netfilter与ip_conntrackNetfilterLinux的协议栈仅仅实现了基本的协议操作,对应TCP/IP标准,Linux的协议栈仅仅实...
Raspberry Pi(树莓派)的安装、配置IP及软件源等入门

Raspberry Pi(树莓派)的安装、配置IP及软件源等入门

背景:Raspberry Pi近两年出现的很火的东西,它很小只有信用卡那样的尺寸。很多公司也在用这东西,我自己也买了一个来玩。对于我这种喜欢DIY的人来说,这真的是个不错的选择。有三种版本,我买的是绿板。推荐阅读:Raspberry Pi 树莓派搭LAMP服务器 http://www.linuxidc.com/Linux/2013-06/86687.htm在树莓派Raspberry Pi上安装游戏模拟器 http://www.linuxidc.com/Li...
远程连接Raspberry Pi(树莓派)图形用户界面(X Window)

远程连接Raspberry Pi(树莓派)图形用户界面(X Window)

背景:有的时候,我们希望能远程连接一台linux的图形界面用来管理机器,这里需要用到tightvncserver和xtightvncviewer两个工具我的树莓派的ip是10.141.247.134 另一台机器为作client去链接树莓派的ip为10.141.247.121. 先在树莓派的机器上安装tightvncserver (请先依据我的另一篇博文设置软件源)sudo apt-get install tightvncserver2. 开启tightvn...
Nautilus Gksu 插件:在右键菜单中增加“以管理员身份打开”

Nautilus Gksu 插件:在右键菜单中增加“以管理员身份打开”

以前,我很想要一个用管理员身份打开文件/目录的右键菜单选项(在nautilus文件管理器中)。原因在于,每个需有root权限的操作,我都必须返回命令行终端使用sudo。这并不是说我不习惯命令行,但是我仍希望至少有个能等价于sudo或su的东西。我四处搜索发现一个nautilus插件-- Nautilus-Gksu 。NOTE -- 本文中所有的示例已经在Ubuntu 13.04上测试过。Nautilus-Gksu简短教程Nautilus-Gksu插件在右键...
Ubuntu下shell脚本运行异常:bash和dash的区别

Ubuntu下shell脚本运行异常:bash和dash的区别

Ubuntu下我用bash到语法写了一个shell脚本(准确的说是把书上的脚本敲进电脑),在ubuntu下,用sh test.sh来运行,但是出现了意料之外到结果,比如echo -e " Test "到执行就不同,直接用sh test.sh运行,会打印出-e(作为字符串);而直接在终端中输入echo -e " Test "是不会输出"-e"的。我就在想是什么原因,后来终于发现是Ubuntu下sh默认指向dash。echo $SHELL --> /bi...
Ubuntu 12.04下安装CUDA v5.5

Ubuntu 12.04下安装CUDA v5.5

作为一个大四学生,还在苦逼找工作到我,可是仍然不想认真学一门技术到我,只是想在大学期间接触更多到知识,以至于自己面对选择能有自己独立的思考,判断,而不是听任何一个前辈说什么好,就去学什么,现在能独立作出选择了,虽然没精深一门,好吧,正如你前面看到到,我才大四不是吗?一个偶然到机会看到异构开发,介绍说图像处理性能能直逼FPGA实现到硬件处理速度,而我这人对速度一直就特别感兴趣,因为毕业后就想找个用FPGA实现图像处理到实时性(PS:这个很难找,像我本科,几乎...
<< 781 782 783 784 785 786 787 788 789 790 >>