Coder Social home page Coder Social logo

dmbaturin / iproute2-cheatsheet Goto Github PK

View Code? Open in Web Editor NEW
411.0 42.0 88.0 365 KB

iproute2 command reference

Home Page: https://baturin.org/docs/iproute2

HTML 13.07% Lua 75.40% CSS 11.53%
iproute2 html network-admin network linux hacktoberfest

iproute2-cheatsheet's Introduction

Task-centered iproute2 user guide

The iproute2 package that contains ip, bridge, tc, and ss is now the Linux network management toolkit. Not only does it combine the functionality of the old ifconfig, vconfig, route, and other commands, it also supports networking features that the old tools still do not support. Some examples of missing functionality are multiple addresses on the same interface, policy-based routing, VRFs, network namespaces, and more.

A major issue with the iproute2 package is its documentation. Its man pages are extremely terse: only basic descriptions of the options and almost no examples. While for an experienced user, this level of documentation is enough, for most novice users, it is not. Many users continue using ifconfig out of habit and familiarity and ultimately miss out on the powerful features of the new tools.

Historically, community-maintained documentation such as http://policyrouting.org/iproute2-toc.html and https://www.lartc.org/howto/ filled the documentation void. Unfortunately, those classic documents were written in the early to mid-2000s and haven't been updated ever since. They are still good for learning how to use old features but don't cover any new functionality. Worse yet, those documents aren't under free-culture licenses, so it's impossible to fork them and make updated versions without their original maintainers' consent.

This document aims to provide a comprehensive, easy-to-use, free (as in freedom) guide to iproute2 โ€” at least its ip and bridge commands (documenting tc in this style would be a separate big project).

Originally this guide was named "iproute2 cheatsheet", but it has long outgrown the scope and size of a mere cheatsheet, so now it's named a "Task-centered iproute2 user guide".

Primary location and mirroring

The original and primary location of the document is https://baturin.org/docs/iproute2/

The page is bundled with all the JS, CSS, and images, so it's easy to mirror or save for local use.

Contributing

Patches are always welcome. If you want to fix a typo, improve grammar or wording, or document a previously undocumented feature, please open a pull request or email me a patch (use git format-patch please!).

The content source is in site/index.md.

The licenses under CC-BY-SA 4.0.

Contributing guidelines

Please use HTML headings with id attributes. Do not use Markdown headings. In other words, use <h3 id="ip-link-frobnicate">Frobnicate a link</h3> rather than ### Frobnicate a link.

That allows section links to stay the same even if their wording changes or they are moved around the document. People are sharing deep links to sections of this document page, so let's keep those links permanent.

Building

The manual page is built with soupault website generator/HTML processor.

This is how to build the page:

  • Install git โ€” it's also used in the build process to generate the "last modified" timestamp.
  • Install soupault and cmark on your system.
  • Run soupault in the project directory.
  • Find the generated page in build/index.html

This is what happens during the build process:

  • site/index.md is converted to HTML and inserted in the <main> element of templates/main.html.
  • A table of contents is generated from the page headings (soupault's built-in functionality).
  • The table of contents <ul> is converted to a foldable "tree" of HTML5 <details> elements using the plugins/collapsible-list.lua plugin.
  • CSS stylesheet and images are inlined using the plugins/inline-assets.lua plugin.
  • Last modification date is extracted from the git commit history and inserted into the page, using the plugins/git-timestamp.lua plugin.

iproute2-cheatsheet's People

Contributors

alex-eri avatar axilleas avatar commonism avatar depereo avatar dmbaturin avatar elico avatar fauxm avatar fgtham avatar haishanh avatar klyr avatar kroy-the-rabbit avatar nhandler avatar pichuang avatar smstong avatar stappersg avatar stepnem avatar thoastbrot avatar trickv avatar umbs avatar wzyboy avatar yrro avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

iproute2-cheatsheet's Issues

sysctl conf cheats

Info about useful like net.ipv4.conf.all.ignore_routes_with_linkdown=1 needed

Typo - is: "runnel" should be: "tunnel"

Hi,
Found a typo, patch below.
(The cheat sheet is great!)

--- index.html.orig   2015-06-10 11:13:29.777972729 +0200
+++ index.html  2015-06-10 11:13:43.770972479 +0200
@@ -780,7 +780,7 @@
           <h4>Create an IPIP tunnel</h4>
           <pre>ip tunnel add ${interface name} mode ipip local ${local endpoint address} remote ${remote endpoint address}</pre>
           <span>Examples:</span>
-          <pre>ip runnel add tun0 mode ipip local 192.0.2.1 remote 198.51.100.3</pre>
+          <pre>ip tunnel add tun0 mode ipip local 192.0.2.1 remote 198.51.100.3</pre>
           <pre>ip link set dev tun0 up</pre>
           <pre>ip address add 10.0.0.1/30 dev tun0</pre>
         </div>

SSL certificate expired

lets encrypt ssl certificate appears to have expired on Thursday, June 7, 2018 at 11:04:09 AM

Please update?

link states like dead

alpine-virt:~# ip r
default proto static metric 9  via 192.168.122.1 dev eth0 weight 1 dead linkdown 
...

Can you add examples on ``ip xfrm``?

There are few results googling ip xfrm. Can you provide some examples and explanations on it?

I find an example using ip xfrm to create an ipsec tunel, but without any further explanation on the commands.

New -br (brief) formatting option

Newer versions of iproute2 have the -br[ief] command line switch. This should be used as the first switch immediately after the command.

Some examples:

[nick@alarmpi-2 ~]$ ip -br addr show
lo               UNKNOWN        127.0.0.1/8 ::1/128 
eth0             UP             192.0.2.1/24 2001:db8:200:84:ba27:ebff:fe68:5f03/64 fe80::ba27:ebff:fe68:5f03/64 
[nick@alarmpi-2 ~]$ ip -br  -4 addr show
lo               UNKNOWN        127.0.0.1/8 
eth0             UP             192.0.2.1/24 
[nick@alarmpi-2 ~]$ ip -br link show
lo               UNKNOWN        00:00:00:00:00:00  
eth0             UP             b8:27:eb:68:5f:03  

Makes a big improvement to the formatting for these commands in particular! I'm not sure whether this should be documented in it's own section or added to the respective sections I have used in the above examples.

deleting tuntap requires mode

Thanks for a really helpful resource.
On my system
Linux nickb-Precision-M20 4.10.0-38-generic #42~16.04.1-Ubuntu SMP Tue Oct 10 16:30:51 UTC 2017 i686 i686 i686 GNU/Linux

ip tuntap del dev tap0
does not work it's actually
ip tuntap del dev tap0 mode tap

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.