Linux - NetworkingThis forum is for any issue related to networks or networking.
Routing, network cards, OSI, etc. Anything is fair game.
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Introduction to Linux - A Hands on Guide
This guide was created as an overview of the Linux Operating System, geared toward new users as an exploration tour and getting started guide, with exercises at the end of each chapter.
For more advanced trainees it can be a desktop reference, and a collection of the base knowledge needed to proceed with system and network administration. This book contains many real life examples derived from the author's experience as a Linux system and network administrator, trainer and consultant. They hope these examples will help you to get a better understanding of the Linux system and that you feel encouraged to try out things on your own.
Click Here to receive this Complete Guide absolutely free.
Could you tell me how to figure out which RFCs are supported by a given version of Linux?
If possible, I'd like the answer to this general question, but in case there is no answer, here's my specific need.
I have linux version 18.104.22.168, I'm an IPv6 developer (kinda new at it). I want to know whether, for example, RFC 1981 is supported (this is the IPv6 version of Path MTU Discovery). I actually have a list of RFCs I want to know about. I've looked at the IPv6 HOW-TO, I've searched through this site, I've googled the web in general, I've looked at the Linux Documentation Project site, and I can't seem to find a comprehensive list of which RFCs are supported in which versions of linux. I know it's got to be out there somewhere. It will take me a long time if I need to read the kernel code to figure out whether, for example, 22.214.171.124 supports the older version RFC 2463 ICMPv6 or whether it supports the newer RFC 4443 ICMPv6. Well, actually, that one is probably pretty easy to answer because 4443's date is later than 126.96.36.199's date. But you see what I mean.
So, I'm really asking for a pointer to a doc somewhere? Or a site that lists all the RFCs in Linux, to search? Please? and thank you for any help you can provide, even partial. Just in case there's actually no comprehensive doc but you have personal knowledge of a particular RFC compliance, here's the list of RFCs I'm interested in:
RFC 1981 Path MTU Discovery
RFC 3315 DHCPv6 (I'm pretty sure the answer here is NOT in linux yet but you can get software from fedorahosted.org that you can install.)
RFC 2710 Multicast Listener Discovery
RFC 4193 Unique IPv6 Local Address
RFC 4007 IPv6 Scoped Address Architecture
Here are ones I'm pretty sure ARE in linux 188.8.131.52 -- I am just assuming that all of the following are supported, based on the chart in the IPv6 HOW-TO, although it's a bit of a stretch because they are NOT listed by number:
2461: Neighbor Discovery
2462: IPv6 over Ethernet
2463: ICMPv6 (probably not the newer 4443)
3513: IPv6 Addressing Architecture (probably not the newer 4291)
Thanks again for any help you can give me to figure out HOW to figure this out!
So, I'm really asking for a pointer to a doc somewhere? Or a site that lists all the RFCs in Linux, to search?
It's all in how you do research, what you need to do is enhance your search-fu. On the 'net \"RFC 1981\" is pretty specific and shouldn't yield too much false positives. The other things you have to know is what a certain RFC applies to (kernel or userland), where the most traffic on the subject is and where it ends up. For Linux (the kernel) that'll be the Linux Kernel mailing list aka LKML which ends up in GIT if accepted. Whatever comes out of GIT ends up in your local copy of the kernel source so you can grep the changelog. So if you know it's in-kernel and about RFC 1981 you could narrow it down and use "site:kernel.org +"RFC 1981"" (watch inner quotes) with your favourite searchengine:
Thank you, unSpawn, the hint to search only the site kernel.org was very helpful.
It would be a foolproof search method if the developers always mentioned the RFC they were implementing, but apparently they don't. It is still a hit-or-miss guess after a fair amount of code-reading as to when the RFC was actually implemented. The Path MTU Discovery is a good example. The RFC 1981 is mentioned in a comment on a bugfix in version 2.6.16-rc1, but the code was in earlier versions and never mentioned RFC 1981.
Nonetheless, I really do appreciate the help; with it I was able to find out a lot more info. I am fairly new to open-source codebases and I just need to readjust my expectations for documentation (as in, "the code is the documentation -- if you want to know whether a particular RFC is implemented, first read the RFC then read the code" :-) )
Come to think of it there also are a few consortia that do Linux (kernel) compliance tests. Maybe those published results or the tests themselves could help you assess if something is implemented or not.