Commit Graph

1908 Commits

Author SHA1 Message Date
Stephen Hemminger 9d2c16438c if_bridge: remove in6.h
Adding in6.h breaks build with redefined values.
2014-12-09 20:19:26 -08:00
vadimk 6fcabac5e0 ip monitor: Fix issue when timestamp is printed w/o msg
The issue was observed when IPv6 router broadcasted NDUSEROPT
messages which are not handled by monitor and caused printing
'Timestamps' w/o message because such kind of rtnl messages is not
handled by monitor.

As 'ip monitor' by default subscribes to the all mcast rtnl groups except
RTGRP_TC then all messages of these rtnl groups which are not handled by
monitor may cause such issues.

Fixed by subscribing by default to rtnl mcast groups which are
supported by 'ip monitor'.

Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-12-09 20:17:29 -08:00
Nicolas Dichtel 2ec28933b6 ipaddress: enable -details option
This option was used only for 'ip link', but it can be useful to have it for
'ip address'. Thus it is possible to display link details and addresses with one
command.

Example:
$ ip -d a ls dev gre1
9: gre1@NONE: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1468 qdisc noqueue state UNKNOWN group default
    link/gre 10.16.0.249 peer 10.16.0.121 promiscuity 0
    gre remote 10.16.0.121 local 10.16.0.249 ttl inherit ikey 0.0.0.10 okey 0.0.0.10 icsum ocsum
    inet 192.168.0.249 peer 192.168.0.121/32 scope global gre1
       valid_lft forever preferred_lft forever
    inet6 fe80::5efe:a10:f9/64 scope link
       valid_lft forever preferred_lft forever

Suggested-by: Christophe Gouault <christophe.gouault@6wind.com>
Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
2014-12-09 20:17:01 -08:00
Scott Feldman 85c1807f16 bridge/fdb: fix statistics output spacing
Signed-off-by: Scott Feldman <sfeldma@gmail.com>
Signed-off-by: Jiri Pirko <jiri@resnulli.us>
2014-12-09 16:29:27 -08:00
Stephen Hemminger 5a311b0bec need libc-compat.h for new in6.h
The header wars continue...
2014-12-05 12:47:34 -08:00
Stephen Hemminger 69fdff1fdb add local version of linux/in6.h
Need this header file to avoid build issues on older systems
like Debian 7
2014-12-05 12:16:36 -08:00
Stephen Hemminger f66611d823 ip-link: fix unterminated string in manpage
Missing "
2014-12-03 19:35:36 -08:00
Stephen Hemminger b2e116d6c3 tc: minor spelling fixes 2014-12-03 19:28:34 -08:00
Stephen Hemminger 14e9767330 tunnel: decode ESP tunnel type
Add ESP to decode switch.
2014-12-03 19:08:41 -08:00
Stephen Hemminger 9de4c6e9e9 rt_dsfield: fix Expedited Forwarding PHB
RFC 2598 defines Expedited Forwarding in section 2.3
   Codepoint 101110 is recommended for the EF PHB.
which translates to B8 as encoded in rt_dsfield
2014-12-03 18:50:59 -08:00
vadimk 8322d28dca man ip-link: Fix indentation for 'ip link show' options
BEFORE:
              The show command has additional formatting options:

       -s, -stats, -statistics
              output more statistics about packet usage.

       -d, -details
              output more detailed information.

       -h, -human, -human-readble
              output statistics with human readable values number followed by suffix

       -iec   print human readable rates in IEC units (ie. 1K = 1024).
AFTER:
       The show command has additional formatting options:

              -s, -stats, -statistics
                     output more statistics about packet usage.

              -d, -details
                     output more detailed information.

              -h, -human, -human-readble
                     output statistics with human readable values number followed by suffix

              -iec   print human readable rates in IEC units (ie. 1K = 1024).

Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-12-03 09:17:36 -08:00
Pavel Simerda 922b482204 ip route: don't assume default route
Just print the help when "ip route del" is called without any other
arguments.

Resolves:

 * https://bugzilla.redhat.com/show_bug.cgi?id=997965

Signed-off-by: Pavel Šimerda <psimerda@redhat.com>
2014-12-03 09:16:07 -08:00
vadimk 10ed8b7f67 configure: Add check for the doc tools
Added checking existence of the doc files converters.
If the XXX tool exists then HAVE_XXX:=y will be written
to the Config file. Example of the configure script output:

TC schedulers
 ATM	no
 IPT	using xtables
 IPSET  yes

iptables modules directory: /usr/lib/iptables
libc has setns: yes
SELinux support: no

Docs
 latex: no
 WARNING: no docs can be built from LaTeX files
 sgml2html: yes

Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-11-30 09:50:25 -08:00
Stephen Hemminger e9c4b7c38f update if_bridge
Use current upstream header.
2014-11-30 09:48:14 -08:00
vadimk 3b28be6e14 ss: Use generic handle_netlink_request for packet
Get rid of self-handling and creating of Netlink socket for show packet
socket stats.

Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-11-30 09:43:43 -08:00
vadimk 1f299e9249 man ip-link: Add description for 'help' command
Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-11-30 09:40:08 -08:00
vadimk 5fb421d434 ss: Refactor to use macro for define diag nl request
Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-11-29 11:29:36 -08:00
Vadim Kochan 1b94414854 ip link: Allow to filter devices by master dev
Added 'master' option to 'ip link show' command
to filter devices by master dev.

Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-11-29 11:27:41 -08:00
Dave Taht 1fa804e0d3 iproute2: Add support for babel protocol table entry 2014-11-29 11:24:25 -08:00
vadimk 2dc854854b ss: Fixed broken output for Netlink 'Peer Address:Port' column
When output the netlink sockets:

    ss -A netlink state close

the layout is a little broken with a shifted 'Peer Address:Port'
stars and empty new lines. Fixed by making the port field to be
wider for 'Local Address:Port' column.

Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-11-29 11:21:42 -08:00
vadimk 45a4770bc0 ss: Remove checking SS_CLOSE state for packet and netlink
I dont see a reason that packet and netlink states will be
printed only if SS_CLOSE state is set in filter, in that case
to print states of netlink or packet sockets it is needed to run:

    ss -A netlink state close

instead of:

    ss -A netlink

Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-11-29 11:20:51 -08:00
vadimk 0948adc01a ip netns: Identify netns for the current process
As 'ip' util will share the same netns from the caller
process then we can just look at /proc/self/.. to show
the netns of the current process by:

    ip netns id

Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-11-29 11:19:11 -08:00
vadimk 18f39a3a02 tests: Move tc related tests to testsuite/tests/tc folder
With this change the results of tc tests will be recorded under:

    testsuite/results/tc/

The ip related tests can be added under:

    testsuite/tests/ip

Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-11-29 11:17:11 -08:00
vadimk 093b76466e ip monitor: Allow to filter events by dev
Added 'dev' option to allow filtering events by device.

Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-11-29 11:15:40 -08:00
vadimk eef43b5052 ss: Identify more netlink protocol names
There were only few Netlink protocol names
which were printed on the screen:

    rtnl, fw, tcpdiag

So added the ability to identify Netlink proto name
from /etc/iproute/nl_protos or from static table.

Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-11-29 11:13:38 -08:00
Tom Herbert 666cdc506f vxlan: Add support for enabling UDP checksums
Add udpcsum option to enable transmitting UDP checksums when doing
VXLAN/IPv4. Add udp6zerocsumtx, and udp6zerocsumrx options to enable
sending zero checksums and receiving zero checksums in VXLAN/IPv6.

Signed-off-by: Tom Herbert <therbert@google.com>
2014-11-29 11:07:00 -08:00
Or Gerlitz 8ca8fac7aa ip-link: Document IPoIB link type in the man page
Add documentation on how to create devices of type IP-over-Infiniband
in the man page.

Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
2014-11-29 11:05:51 -08:00
Florian Westphal 4d9a264f09 utils: relax strtoX checking in get_time_rtt
ip route change dev tap0 192.168.7.0/24 rto_min 1ms
Error: argument "1ms" is wrong: "rto_min" value is invalid

get_time_rtt() checks for 's' or 'msec' and converts to milliseconds
if needed.

Fixes: 697ac63905 (utils: fix range checking for get_u32/get_u64 et all)
Signed-off-by: Florian Westphal <fw@strlen.de>
2014-11-22 13:52:44 -08:00
Tom Herbert e4fc7e2625 iproute2: Man pages for fou and gue
Man pages for Foo-over-UDP and Generic UDP Encapsulation receive
port configuration. gue man page links to fou one.

Signed-off-by: Tom Herbert <therbert@google.com>
2014-11-06 16:17:34 -08:00
Tom Herbert 80c24b097e ip link gre: Add support to configure FOU and GUE
This patch adds support to configure foo-over-udp (FOU) and Generic
UDP Encapsulation for GRE tunnels. This configuration allows selection
of FOU or GUE for the tunnel, specification of the source and
destination ports for UDP tunnel, and enabling TX checksum. This
configuration only affects the transmit side of a tunnel.

Example:

ip link add name tun1 type gre remote 192.168.1.1 local 192.168.1.2 \
   ttl 225 encap fou encap-sport auto encap-dport 7777 encap-csum

This would create an GRE tunnel in GUE encapsulation where the source
port is automatically selected (based on hash of inner packet) and
checksums in the encapsulating UDP header are enabled.

Signed-off-by: Tom Herbert <therbert@google.com>
2014-11-06 16:17:34 -08:00
Tom Herbert c1159152e1 ip link ipip: Add support to configure FOU and GUE
This patch adds support to configure foo-over-udp (FOU) and Generic
UDP Encapsulation for IPIP and sit tunnels. This configuration allows
selection of FOU or GUE for the tunnel, specification of the source and
destination ports for UDP tunnel, and enabling TX checksum. This
configuration only affects the transmit side of a tunnel.

Example:

ip link add name tun1 type ipip remote 192.168.1.1 local 192.168.1.2 \
   ttl 225 encap gue encap-sport auto encap-dport 9999 encap-csum

This would create an IPIP tunnel in GUE encapsulation where the source
port is automatically selected (based on hash of inner packet) and
checksums in the encapsulating UDP header are enabled.

Signed-off-by: Tom Herbert <therbert@google.com>
2014-11-06 16:17:34 -08:00
Tom Herbert 6928747b6e ip fou: Support to configure foo-over-udp RX
Added 'ip fou...' commands to enable/disable UDP ports for doing
foo-over-udp and Generic UDP Encapsulation variant. Arguments are port
number to bind to and IP protocol to map to port (for direct FOU).

Examples:

ip fou add port 7777 gue
ip fou add port 8888 ipproto 4

The first command creates a GUE port, the second creates a direct FOU
port for IPIP (receive payload is a assumed to be an IPv4 packet).

Signed-off-by: Tom Herbert <therbert@google.com>
2014-11-06 16:17:34 -08:00
Masatake YAMATO e37a9c73d2 man: ip-link: fix a typo
Signed-off-by: Masatake YAMATO <yamato@redhat.com>
2014-11-06 16:02:38 -08:00
Christian Hesse 50ec66507b ip-link: in human readable output use dynamic precision length 2014-11-06 16:02:33 -08:00
vadimk 5cb6aa0348 doc ip-cref: Added missing ip options
Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-11-06 16:02:30 -08:00
Christian Hesse f4fe81d26c ip-link: fix column alignment
Width is the maximum number of characters used for the value, excluding a
field separator. So append a single whitespace.
2014-11-06 16:02:29 -08:00
Stephen Hemminger 1e264abc3a ip: add iec formatted option and cleanup code
Add a new -iec option in addition to -human.
Cleanup code so the formatting of numbers is done in one function,
not 2 ways and 2 sizes.
2014-11-02 12:49:19 -08:00
Christian Hesse b68d983754 ip-link: add switch to show human readable output
Byte and packet count can increase to really big numbers. This adds a
switch to show human readable output.

4: wl: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT group default qlen 1000
    link/ether 00🇩🇪ad:be:ee:ef brd ff:ff:ff:ff:ff:ff
    RX: bytes  packets  errors  dropped overrun mcast
    1523846973 3969051  0       0       0       0
    TX: bytes  packets  errors  dropped carrier collsns
    8710088361 6077735  0       0       0       0
4: wl: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT group default qlen 1000
    link/ether 00🇩🇪ad:be:ee:ef brd ff:ff:ff:ff:ff:ff
    RX: bytes  packets  errors  dropped overrun mcast
    1.5G       3.9M     0       0       0       0
    TX: bytes  packets  errors  dropped carrier collsns
    8.7G       6.0M     0       0       0       0
2014-11-02 11:53:29 -08:00
Alexey Andriyanov a0638e18b2 iproute2: ip6_tunnel mode bugfixes: any,vti6
- any ipv6 tunnel mode (proto == 0) could not be set
due to incomplete set of cases in do_add, do_del.
- vti6 logic was inverted: it was using "ip6_vti0" basedev
UNLESS mode is set to vti6.

We don't need a switch by p.proto in do_add()/do_del(): it
already exists in parse_args(). So if parse_args() call
was successful, no need to check tunnel mode again.

Signed-off-by: Alexey Andriyanov <alan@al-an.info>
2014-11-02 11:48:43 -08:00
Nicolas Dichtel eeb669a740 man: update doc after support of ESN and anti-replay window
Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
2014-10-30 09:39:25 -07:00
Stephen Hemminger 0bf4c355ee Merge branch 'net-next'
Conflicts:
	include/linux/if_tunnel.h
2014-10-30 09:38:56 -07:00
dingzhi 0151b56d10 xfrm: add support of ESN and anti-replay window
This patch allows to configure ESN and anti-replay window.

Signed-off-by: dingzhi <zhi.ding@6wind.com>
Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
2014-10-29 22:50:48 -07:00
Eric Dumazet e557212eda netlink: extend buffers to 16K
Starting from linux-3.15 (commit 9063e21fb026, "netlink: autosize skb
lengths"), kernel is able to send up to 16K in netlink replies.

This change enables iproute2 commands to get bigger chunks,
without breaking compatibility with old kernels.

Signed-off-by: Eric Dumazet <edumazet@google.com>
2014-10-29 22:43:04 -07:00
Daniel Borkmann 907e1aca5f ss: output dctcp diag information
Dump useful DCTCP state/debug information gathered from diag.

Signed-off-by: Daniel Borkmann <dborkman@redhat.com>
Signed-off-by: Florian Westphal <fw@strlen.de>
2014-10-29 22:37:45 -07:00
Stephen Hemminger dddfc7f67e Update kernel headers to 3.18-rc2 2014-10-29 22:32:02 -07:00
vadimk 14f8854fa3 tests: Allow to run tests recursively
Such approach allows to run *.t scripts from any
tests/ subdirectories.

One point is that tests from tests/cls/*.t (which are needed
by tests/cls-testbed.t but does not exist yet) will also
be ran aside with tests/cls-testbed.t which is not good
because in such case they will be ran twice, so renamed these
tests path to tests/cls/*.c in tests/cls-testbed.t

Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-10-29 22:26:59 -07:00
vadimk 8d391512b7 tests: Skip cls-testbed.t if tests/cls dir does not exist
Curently tests/cls-testbed.t tries to run any *.t in
tests/cls/ folder but such folder does not exist.

Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-10-29 22:26:57 -07:00
vadimk a5eafa9a5e man ip: Add missing '-details' option
Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-10-29 22:26:16 -07:00
vadimk 08adf73a0a gitignore: Ignore 'doc' files generated at runtime
The list is based on doc/Makefile 'clean' target

Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-10-29 22:26:15 -07:00
vadimk 2dc6731dce doc make: Add *.pdf files to the 'clean' target
Signed-off-by: Vadim Kochan <vadim4j@gmail.com>
2014-10-29 22:26:14 -07:00