繁体   English   中英

数据包过滤,iptable和路由

[英]Packet Filtering, IpTables and Routing

从技术上讲,我是网络方面的新秀。 我需要对如何组织这些学习知识有一个适当的了解,就像在这个大领域中一样。 我已经了解了网络结构,节点和协议(感知级别),我发现数据包过滤和路由是通过Erlang,C,Linux命令中的代码完成的。 现在有点困惑,如果要加入并希望在现有路由器中实现新功能。 我真正需要知道什么? 哪些编程教程将最有效地帮助我正确理解此编程领域(从我所看到的C,Linux,Erlang)通常是嵌入式程序。

所以有人可以帮忙澄清一下这些术语在技术术语,编程角度,如何在这个领域成为程序员的方法(修改路由器的东西),推荐的教程。

谢谢,感谢您的帮助。

ps。 我不在这里ing带,我在这里和那里读过一些东西,但是它们彼此之间并不直接相关,还没有找到能够将其全部付诸实践的东西。

您需要已故的Richard W. Stevens 绘制TCP / IP

您为什么认为包过滤很重要? 除非您计划开发网络嗅探器,否则它与大多数应用程序无关。

网络编程的典型方法是使用套接字,尽管对于大多数应用程序来说,它有点太低级和原始。 有些高层框架更适合于特定的情况。 例如,许多人只需要通过网络上的IPC来使用套接字。 在那种情况下,最好在Java中使用RMI(远程方法调用)或在C ++中使用DCOM(分布式组件对象模型)(我敢肯定,.NET中有类似的东西)。

因此,您将看到,网络编程完全是关于抽象和分层的。 即使您使用原始TCP,也将使用抽象,因为TCP在IP之上分层,而IP在以太网之上分层。

就编程而言,尽管使用任何语言,都应从套接字编程开始。 理查德·史蒂文斯(Richard Stevens)的Unix网络编程第1卷是一个很好的参考。

网络编程只能分层学习。 除非您对应用层有足够的了解,否则您不应该期望知道传输层,并且从网络层一直贯穿到物理层

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM