Note_Tech

All technological notes.


Project maintained by simonangel-fong Hosted on GitHub Pages — Theme by mattgraham

Linux - Networking: Package iproute

Back


iproute Package

sudo yum install iproute
rpm -aq | grep iproute

ip Utility

CMD DESC
ip link show Displays information about all network interfaces
ip link show dev_id Displays information about a network interface
ip link show up Displays only running interfaces
ip link set dev_id up Enable an interface
ip link set dev_id down Disable an interface
ip link set dev old_id name new_id Rename a device
ip link set dev dev_id address MAC_address Change the MAC Address
ip link set dev dev_id mtu size Set the MTU
CMD DESC
ip addr show Displays ip for all interfaces
ip addr show up Displays ip for all active interface
ip addr show device_name Displays ip for an interface
ip addr add ip/mask dev device_name Assign a runtime IP Address to an Interface
ip addr del ip/mask dev device_name Remove an IP Address
ip addr flush dev device_name scope global Removes all global IPv4 and IPv6 addresses
CMD DESC
ip route show Display routing table
ip route add dest_ip/mask via gw_ip dev interface_name Add a route
ip route del dest_ip/mask Delete a route
ip route add default via gw_ip dev interface_name Set a Default Gateway

ip addr: Get Interface and IP Info

ip addr
# 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
#     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: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
#     link/ether 00:0c:29:5b:ce:78 brd ff:ff:ff:ff:ff:ff
#     altname enp3s0
#     inet 192.168.204.153/24 brd 192.168.204.255 scope global dynamic noprefixroute ens160
#        valid_lft 1287sec preferred_lft 1287sec
#     inet6 fe80::20c:29ff:fe5b:ce78/64 scope link noprefixroute
#        valid_lft forever preferred_lft forever
# 3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
#     link/ether 52:54:00:c5:c9:4d brd ff:ff:ff:ff:ff:ff
#     inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
#        valid_lft forever preferred_lft forever




Lab: View Interface Information

# List all devices
ip link show
# 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
#     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
# 2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
#     link/ether 00:0c:29:5b:ce:78 brd ff:ff:ff:ff:ff:ff
#     altname enp3s0
# 3: ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
#     link/ether 00:0c:29:5b:ce:82 brd ff:ff:ff:ff:ff:ff
#     altname enp19s0
# 4: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
#     link/ether 52:54:00:c5:c9:4d brd ff:ff:ff:ff:ff:ff

ip link show ens224
# 3: ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
#     link/ether 00:0c:29:5b:ce:82 brd ff:ff:ff:ff:ff:ff
#     altname enp19s0

Lab: Assign a Static Runtime IP

# list all ip of all interfaces
ip addr show

# Get ip of a interface
ip addr show ens224
# 3: ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
#     link/ether 00:0c:29:5b:ce:82 brd ff:ff:ff:ff:ff:ff
#     altname enp19s0
#     inet 192.168.204.171/24 brd 192.168.204.255 scope global noprefixroute ens224
#        valid_lft forever preferred_lft forever
#     inet6 fe80::70eb:5c8e:a06e:f8e2/64 scope link noprefixroute
#        valid_lft forever preferred_lft forever

# Add an ip
ip addr add 192.168.204.170/24 dev ens224
ip addr show ens224 | grep "inet "
# inet 192.168.204.171/24 brd 192.168.204.255 scope global noprefixroute ens224
# inet 192.168.204.170/24 scope global secondary ens224

# Delete ip
ip addr del 192.168.204.173/24 dev ens224
ip addr show ens224 | grep "inet "
# inet 192.168.204.170/24 scope global ens224

# Removes all global IPv4 and IPv6 addresses
ip address flush dev ens224 scope global
ip addr show ens224
# 3: ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
#     link/ether 00:0c:29:5b:ce:82 brd ff:ff:ff:ff:ff:ff
#     altname enp19s0
#     inet6 fe80::70eb:5c8e:a06e:f8e2/64 scope link noprefixroute
#        valid_lft forever preferred_lft forever

ss Utility

CMD DESC
ss -s Statistics for a Specific Protocol
ss -a Displaya both listening and non-listening sockets.
ss -t Displays TCP connections.
ss -u Displays UDP connections.
ss -x Displays UNIX domain sockets.
ss -l Displays only sockets in the listening state.
ss -p Displays Connections with Process Information
ss -tp src :22 Displays pid and established TCP sockets with local port 22
ss -tp dst :ssh Displays pid and established TCP sockets with remote ssh port
ss -ltp src :22 Displays pid and listening TCP sockets with local port 22
ss -ltp dst :ssh Displays pid and listening TCP sockets with remote ssh port
ss -4tp src 192.168/16 Displays pid and TCP IPv4 sockets on a local subnet
ss -K dst 192.168.204.1 dport = 54739 Kill Socket Connection with destination IP and destination port

Lab: Filter and Kill Connection

# Confirm listen to ssh port
ss -ltp src :22
# State   Recv-Q  Send-Q   Local Address:Port    Peer Address:Port  Process
# LISTEN  0       128            0.0.0.0:ssh          0.0.0.0:*      users:(("sshd",pid=1188,fd=3))
# LISTEN  0       128               [::]:ssh             [::]:*      users:(("sshd",pid=1188,fd=4))

# Displays pid and SSH connection
ss -tp src :22
# State      Recv-Q      Send-Q              Local Address:Port              Peer Address:Port       Process
# ESTAB      0           0                 192.168.204.153:ssh              192.168.204.1:55073       users:(("sshd",pid=70913,fd=4),("sshd",pid=70909,fd=4))
# ESTAB      0           64                192.168.204.153:ssh              192.168.204.1:52810       users:(("sshd",pid=3727,fd=4),("sshd",pid=2978,fd=4))

# Kill a ssh connection
ss -K dst 192.168.204.1 dport = 55073
# Netid   State    Recv-Q    Send-Q         Local Address:Port        Peer Address:Port    Process
# tcp     ESTAB    0         0            192.168.204.153:ssh        192.168.204.1:55073

# Verify
ss -tp src :22
# State     Recv-Q     Send-Q           Local Address:Port          Peer Address:Port     Process
# ESTAB     0          0              192.168.204.153:ssh          192.168.204.1:52810     users:(("sshd",pid=3727,fd=4),("sshd",pid=2978,fd=4))

TOP