Ip/Befehl: Unterschied zwischen den Versionen

Aus Foxwiki
Kamalalhassan (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
'''ip''' ist ein Befehl zur Netzwerkkonfiguration und ersetzt ''ifconfig'' aus den obsoleten ''net-tools''
Das Kommando '''ip''' aus der iproute2 Toolsammlung dient unter [[Linux]] zur '''Konfiguration von Netzwerkadressen'''. Es '''ersetzt das ifconfig Kommando''' aus den obsoleten net-tools. Dieser Artikel zeigt die wichtigsten Parameter des ip Kommandos anhand einiger Beispiele.


== Verfügbarkeit ==
== Vergleichstabelle ip versus ifconfig ==
# apt install iproute2
Die Tabelle zeigt wichtige Befehle zur Netzwerkkonfiguration und vergleicht die Syntax der Kommandos ip und ifconfig:
Manche Optionen können nur von root durchgeführt werden
 
== Syntax ==
ip OPTIONEN SCHNITTSTELLE
 
== Optionen ==
* Soforthilfe: Gewünschte Option mit dem Schlüsselwort help, z. B.
ip link help
 
== Kurzschreibweise ==
Optionen für ip können in Kurzschreibweise als Anfangsbuchstaben der Option angeben werden
ip addr show -->  ip a s
 
== Alte und neue Befehle ==
{| class="wikitable"
{| class="wikitable"
|- style="background-color: #EFEFEF; font-weight: bold;"
! Zweck
! iproute2 Kommando
! iproute2 Kommando Kurzversion
! net-tools Kommando
|-
|-
!  Traditionell  !! Neu  !! Zweck
| Linkstatus anzeigen
|-
| [[#ip link show|<code>ip link show</code>]]
| ifconfig SCHNITTSTELLE || ip addr show SCHNITTSTELLE ||  IP-Adresse anzeigen
| <code>ip l</code>
|-
| <code>ifconfig</code>
| ifconfig SCHNITTSTELLE IP-ADRESSE netmask NETMASK broadcast BROADCAST || ip addr change IP-ADRESSE/CIDR broadcast BROADCAST dev SCHNITTSTELLE || IP-Adresse setzen
|-
|-
| ifconfig SCHNITTSTELLE IP-ADRESSE netmask NETMASK broadcast BROADCAST || ip addr add IP-ADRESSE/CIDR broadcast BROADCAST dev SCHNITTSTELLE || IP-Adresse hinzufügen
| Linkstatus inkl. Statistik <br>(RX/TX bytes, errors, ...) anzeigen
| [[#ip link show|<code>ip -statistics link show</code>]]
| <code>ip -s l</code>
| <code>ifconfig</code>
|-
|-
| ifconfig SCHNITTSTELLE:1 IP-ADRESSE/CIDR || ip addr add IP-ADRESSE/CIDR dev SCHNITTSTELLE label SCHNITTSTELLE:1 || Alias anlegen
| IP Adresse anzeigen
| [[#ip addr show|<code>ip addr show</code>]]
| <code>ip a</code>
| <code>ifconfig -a</code>
|-
|-
| || ip addr del IP-ADRESSE/CIDR dev SCHNITTSTELLE || IP-Adresse löschen
| IP Adresse setzen
| [[#ip addr add IP/NETMASK dev DEVICE|<code>ip addr add IP/NETMASK dev DEVICE</code>]]
| <code>ip a a IP/NETMASK dev DEVICE</code>
| <code>ifconfig DEVICE IP/NETMASK</code>
|-
|-
| ifconfig SCHNITTSTELLE up || ip link set SCHNITTSTELLE up || Schnittstelle aktivieren
| IP Adresse entfernen
| [[#ip addr add IP/NETMASK dev DEVICE|<code>ip addr del IP/NETMASK dev DEVICE</code>]]
| <code>ip a d IP/NETMASK dev DEVICE</code>
|  
|-
|-
| ifconfig SCHNITTSTELLE down || ip link set SCHNITTSTELLE down || Schnittstelle deaktivieren
| IP Adressen entfernen
| [[#ip addr flush dev DEVICE|<code>ip addr flush dev DEVICE</code>]]
| <code>ip a f dev DEVICE</code>
|  
|-
|-
| route, route -6 || ip route, ip -6 route || Routen (für IPv6) anzeigen
| Routingtabelle anzeigen
| [[#ip route show|<code>ip route show</code>]]
| <code>ip r</code>
| <code>route -n</code>
|-
|-
| route add default gw IP-ADRESSE || ip route add default via IP-ADRESSE dev SCHNITTSTELLE || Gateway setzen
| Standardgateway setzen
| [[#ip route add default via IP|<code>ip route add default via IP</code>]]
| <code>ip r a default via IP</code>
| <code>route add default gw IP DEVICE</code>
|-
|-
| arp -a || ip neighbour || [https://de.wikipedia.org/wiki/Address_Resolution_Protocol ARP]
| ARP-Cache anzeigen
| [[#ip neigh show|<code>ip neigh show</code>]]
| <code>ip n</code>
| <code>arp -na</code>
|-
|-
| netstat || ss || Sockets anzeigen
| Verbindungen anzeigen
| <code>ss --tcp --all --processes --extended --numeric</code>
| <code>ss -tapen</code>
| <code>netstat -tapen</code>
|}
|}


== Anwendungen ==
== Beispiele ==
Die folgenden Ausgaben zeigen einige Beispiele von iproute2 Kommandos
 
Die folgenden Ausgaben zeigen einige Beispiele von iproute2 Kommandos.
 
=== ip help ===
<pre>
$ ip help
Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
      ip [ -force ] -batch filename
where  OBJECT := { link | addr | addrlabel | route | rule | neigh | ntable |
                  tunnel | tuntap | maddr | mroute | mrule | monitor | xfrm |
                  netns }
      OPTIONS := { -V[ersion] | -s[tatistics] | -d[etails] | -r[esolve] |
                    -f[amily] { inet | inet6 | ipx | dnet | link } |
                    -l[oops] { maximum-addr-flush-attempts } |
                    -o[neline] | -t[imestamp] | -b[atch] [filename] |
                    -rc[vbuf] [size]}
</pre>


=== ip link show ===
=== ip link show ===
Zeigt nur die Netzwerkkarten an.
<pre>
$ ip link show
$ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN  
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN  
     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
     link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff
     link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff
</pre>


=== ip -statistics link show ===
=== ip -statistics link show ===
Zeigt neben den Netzwerkschnittstellen auch die durchgegangenen Pakete.
<pre>
$ ip -statistics link show
$ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN  
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN  
     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
     RX: bytes  packets  errors  dropped overrun mcast   
     RX: bytes  packets  errors  dropped overrun mcast   
Zeile 64: Zeile 98:
     TX: bytes  packets  errors  dropped carrier collsns  
     TX: bytes  packets  errors  dropped carrier collsns  
     2073916    4895    0      0      0      0       
     2073916    4895    0      0      0      0       
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
     link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff
     link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff
     RX: bytes  packets  errors  dropped overrun mcast   
     RX: bytes  packets  errors  dropped overrun mcast   
Zeile 70: Zeile 104:
     TX: bytes  packets  errors  dropped carrier collsns  
     TX: bytes  packets  errors  dropped carrier collsns  
     308636400  1172428  0      0      0      0       
     308636400  1172428  0      0      0      0       
</pre>


===ip addr show===
=== ip addr show ===
Zeigt Netzwerkschnittstellen und ihre IP-Addressen.
<pre>
$ ip addr show
$ ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN  
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN  
     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
     inet 127.0.0.1/8 scope host lo
     inet 127.0.0.1/8 scope host lo
Zeile 80: Zeile 115:
     inet6 ::1/128 scope host  
     inet6 ::1/128 scope host  
       valid_lft forever preferred_lft forever
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
     link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff
     link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff
     inet 10.1.102.59/24 brd 10.1.102.255 scope global eth0
     inet 10.1.102.59/24 brd 10.1.102.255 scope global eth0
Zeile 86: Zeile 121:
     inet6 fe80::a00:27ff:fe66:72e1/64 scope link  
     inet6 fe80::a00:27ff:fe66:72e1/64 scope link  
       valid_lft forever preferred_lft forever
       valid_lft forever preferred_lft forever
</pre>


=== ip addr add IP/NETMASK dev DEVICE ===
=== ip addr add IP/NETMASK dev DEVICE ===
Fügt eine neue Ip-Addresse zu einer Netzwerkkarte hinzu. IP/NETMASK ist die gewünschte IP-Addresse mit der CIDR-Notation. DEVICE ist der Name der Netzwerkkarte.
<pre>
# ip addr add 10.1.102.60/24 dev eth0
$ sudo ip addr add 10.1.102.60/24 dev eth0
$ ip a
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN  
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN  
     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
     inet 127.0.0.1/8 scope host lo
     inet 127.0.0.1/8 scope host lo
Zeile 97: Zeile 133:
     inet6 ::1/128 scope host  
     inet6 ::1/128 scope host  
       valid_lft forever preferred_lft forever
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
     link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff
     link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff
     inet 10.1.102.59/24 brd 10.1.102.255 scope global eth0
     inet 10.1.102.59/24 brd 10.1.102.255 scope global eth0
Zeile 105: Zeile 141:
     inet6 fe80::a00:27ff:fe66:72e1/64 scope link  
     inet6 fe80::a00:27ff:fe66:72e1/64 scope link  
       valid_lft forever preferred_lft forever
       valid_lft forever preferred_lft forever
</pre>


===ip addr del IP/NETMASK dev DEVICE===
=== ip addr del IP/NETMASK dev DEVICE ===
Löscht eine IP-Addresse von einer Netzwerkkarte.
<pre>
# ip addr del 10.1.102.60/24 dev eth0
$ sudo ip addr del 10.1.102.60/24 dev eth0
$ ip a
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN  
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN  
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet 127.0.0.1/8 scope host lo
        valid_lft forever preferred_lft forever
      valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host  
    inet6 ::1/128 scope host  
        valid_lft forever preferred_lft forever
      valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:15:17:5e brd ff:ff:ff:ff:ff:ff
    link/ether 08:00:27:15:17:5e brd ff:ff:ff:ff:ff:ff
    inet 10.1.102.54/24 brd 10.1.102.255 scope global eth0
    inet 10.1.102.54/24 brd 10.1.102.255 scope global eth0
        valid_lft forever preferred_lft forever
      valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe15:175e/64 scope link  
    inet6 fe80::a00:27ff:fe15:175e/64 scope link  
        valid_lft forever preferred_lft forever
      valid_lft forever preferred_lft forever
</pre>


===ip addr flush dev DEVICE===
=== ip addr flush dev DEVICE ===
Löscht alle IP-Addressen von einer Netzwerkkarte
<pre>
# ip addr flush dev eth0
$ sudo ip addr flush dev eth0
$ ip a
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN  
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN  
     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
     inet 127.0.0.1/8 scope host lo
     inet 127.0.0.1/8 scope host lo
Zeile 133: Zeile 171:
     inet6 ::1/128 scope host  
     inet6 ::1/128 scope host  
       valid_lft forever preferred_lft forever
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
     link/ether 08:00:27:15:17:5e brd ff:ff:ff:ff:ff:ff
     link/ether 08:00:27:15:17:5e brd ff:ff:ff:ff:ff:ff
</pre>


=== ip route show ===
<pre>
$ ip route show
default via 10.1.102.1 dev eth0  metric 100
10.1.102.0/24 dev eth0  proto kernel  scope link  src 10.1.102.59
</pre>


===ip route show===
=== ip route add default via IP ===
Zeigt die Routingtabelle
<pre>
$ ip route show
$ sudo ip route add d via 10.1.102.1
default via 10.1.102.1 dev eth0  metric 100
</pre>
10.1.102.0/24 dev eth0  proto kernel  scope link  src 10.1.102.59
 
* '''ip route add default via IP'''
# ip route add default via 10.1.102.1
Fügt ein Standardgateway in die Routingtabelle hinzu.
 
===ip route add===
# ip route add 10.0.0.0/8 via 10.0.0.200 dev enp0s6
Fügt eine Route zum Netz 10.0.0.0/8 über den Router 10.0.0.200 hinzu. Die angegebene Schnittstelle sollte der internen des Routers 0.200 entsprechen (welche zu einem anderen Netz führ, beispielsweise 10.5.0.200).
 
===ip neigh show===
$ ip neigh show
10.1.102.101 dev eth0 lladdr f0:de:f1:f3:17:88 REACHABLE
10.1.102.1 dev eth0 lladdr 00:0c:42:97:79:63 REACHABLE
 
==Quelle==
* [https://www.thomas-krenn.com/de/wiki/Linux_ip_Kommando thomas-krenn.com]


==Links==
=== ip neigh show ===
# [https://de.wikipedia.org/wiki/Iproute2|Wikipedia Iproute2]
<pre>
# https://wiki.ubuntuusers.de/ip/
$ ip neigh show
# https://lintut.com/how-to-use-linux-ip-command/
10.1.102.101 dev eth0 lladdr f0:de:f1:f3:17:88 REACHABLE
# https://dougvitale.wordpress.com/2011/12/21/deprecated-linux-networking-commands-and-their-replacements/
10.1.102.1 dev eth0 lladdr 00:0c:42:97:79:63 REACHABLE
</pre>


[[Category:Linux:Netzwerke]]
[[Category:Linux:Netzwerke]]

Version vom 16. November 2020, 12:27 Uhr

Das Kommando ip aus der iproute2 Toolsammlung dient unter Linux zur Konfiguration von Netzwerkadressen. Es ersetzt das ifconfig Kommando aus den obsoleten net-tools. Dieser Artikel zeigt die wichtigsten Parameter des ip Kommandos anhand einiger Beispiele.

Vergleichstabelle ip versus ifconfig

Die Tabelle zeigt wichtige Befehle zur Netzwerkkonfiguration und vergleicht die Syntax der Kommandos ip und ifconfig:

Zweck iproute2 Kommando iproute2 Kommando Kurzversion net-tools Kommando
Linkstatus anzeigen ip link show ip l ifconfig
Linkstatus inkl. Statistik
(RX/TX bytes, errors, ...) anzeigen
ip -statistics link show ip -s l ifconfig
IP Adresse anzeigen ip addr show ip a ifconfig -a
IP Adresse setzen ip addr add IP/NETMASK dev DEVICE ip a a IP/NETMASK dev DEVICE ifconfig DEVICE IP/NETMASK
IP Adresse entfernen ip addr del IP/NETMASK dev DEVICE ip a d IP/NETMASK dev DEVICE
IP Adressen entfernen ip addr flush dev DEVICE ip a f dev DEVICE
Routingtabelle anzeigen ip route show ip r route -n
Standardgateway setzen ip route add default via IP ip r a default via IP route add default gw IP DEVICE
ARP-Cache anzeigen ip neigh show ip n arp -na
Verbindungen anzeigen ss --tcp --all --processes --extended --numeric ss -tapen netstat -tapen

Beispiele

Die folgenden Ausgaben zeigen einige Beispiele von iproute2 Kommandos.

ip help

$ ip help
Usage: ip [ OPTIONS ] OBJECT { COMMAND | help }
       ip [ -force ] -batch filename
where  OBJECT := { link | addr | addrlabel | route | rule | neigh | ntable |
                   tunnel | tuntap | maddr | mroute | mrule | monitor | xfrm |
                   netns }
       OPTIONS := { -V[ersion] | -s[tatistics] | -d[etails] | -r[esolve] |
                    -f[amily] { inet | inet6 | ipx | dnet | link } |
                    -l[oops] { maximum-addr-flush-attempts } |
                    -o[neline] | -t[imestamp] | -b[atch] [filename] |
                    -rc[vbuf] [size]}

ip link show

$ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff

ip -statistics link show

$ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    RX: bytes  packets  errors  dropped overrun mcast   
    2073916    4895     0       0       0       0      
    TX: bytes  packets  errors  dropped carrier collsns 
    2073916    4895     0       0       0       0      
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff
    RX: bytes  packets  errors  dropped overrun mcast   
    1716782262 1369751  0       0       0       0      
    TX: bytes  packets  errors  dropped carrier collsns 
    308636400  1172428  0       0       0       0      

ip addr show

$ ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff
    inet 10.1.102.59/24 brd 10.1.102.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe66:72e1/64 scope link 
       valid_lft forever preferred_lft forever

ip addr add IP/NETMASK dev DEVICE

$ sudo ip addr add 10.1.102.60/24 dev eth0
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:66:72:e1 brd ff:ff:ff:ff:ff:ff
    inet 10.1.102.59/24 brd 10.1.102.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet 10.1.102.60/24 scope global secondary eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe66:72e1/64 scope link 
       valid_lft forever preferred_lft forever

ip addr del IP/NETMASK dev DEVICE

$ sudo ip addr del 10.1.102.60/24 dev eth0
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:15:17:5e brd ff:ff:ff:ff:ff:ff
    inet 10.1.102.54/24 brd 10.1.102.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe15:175e/64 scope link 
       valid_lft forever preferred_lft forever

ip addr flush dev DEVICE

$ sudo ip addr flush dev eth0
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:15:17:5e brd ff:ff:ff:ff:ff:ff

ip route show

$ ip route show
default via 10.1.102.1 dev eth0  metric 100 
10.1.102.0/24 dev eth0  proto kernel  scope link  src 10.1.102.59 

ip route add default via IP

$ sudo ip route add d via 10.1.102.1

ip neigh show

$ ip neigh show
10.1.102.101 dev eth0 lladdr f0:de:f1:f3:17:88 REACHABLE
10.1.102.1 dev eth0 lladdr 00:0c:42:97:79:63 REACHABLE