Linux Red Hat 7 and derived distributions have removed and deprecated few commands. Among them netstat and lsof, which are popular between DBAs.
This post shows how to obtain the network information in compliance with the new OS commands.
NETSTAT
netstat – is now considered obsolete, and it has been replaced by ss:
root@oel7qa01:~$ ss -t
State Recv-Q Send-Q Local Address:Port Peer Address:Port
ESTAB 0 0 192.168.1.117:54360 192.0.78.23:https
ESTAB 0 0 192.168.1.117:48538 198.252.206.25:https
ESTAB 0 0 192.168.1.117:42744 162.125.18.133:https
ESTAB 0 0 127.0.0.1:38106 127.0.0.1:52828
ESTAB 0 0 192.168.1.117:54008 192.0.78.23:https
CLOSE-WAIT 1 0 192.168.1.117:60054 51.2xx.195.xx:https
ESTAB 0 0 192.168.1.117:47904 198.2xx.202.xx:https
CLOSE-WAIT 32 0 192.168.1.117:56724 108.1xx.172.xxx:https
CLOSE-WAIT 32 0 192.168.1.117:47050 54.xx.201.xxx:https
ESTAB 0 0 127.0.0.1:52828 127.0.0.1:38106
CLOSE-WAIT 32 0 192.168.1.117:44728 108.1xx.xxx.6x:https
ESTAB 0 0 192.168.1.117:41848 195.xxx.2xx.xxx:https
ESTAB 0 0 192.168.7.50:41268 192.168.7.60:ssh
ESTAB 0 0 2a02:1203:ecb0:7b80:58d9:f6e5:90d9:f266:53060 2a00:1450:400e:800::2003:https
ESTAB 0 0 2a02:1203:ecb0:7b80:58d9:f6e5:90d9:f266:37978 2a00:1450:400a:804::200e:https
ESTAB 0 0 2a02:1203:ecb0:7b80:58d9:f6e5:90d9:f266:51682 2a00:1450:400a:804::2003:https
The netstat -r information is now provided by the command ip route:
--Until Red Hat 6
[root@oel7node00 ~]# netstat -r
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
default gateway 0.0.0.0 UG 0 0 0 enp0s8
default gateway 0.0.0.0 UG 0 0 0 enp0s3
10.0.2.0 0.0.0.0 255.255.255.0 U 0 0 0 enp0s3
172.31.100.0 0.0.0.0 255.255.255.0 U 0 0 0 enp0s9
192.168.7.0 0.0.0.0 255.255.255.0 U 0 0 0 enp0s8
192.168.200.0 0.0.0.0 255.255.255.0 U 0 0 0 enp0s10
--As of Red Hat 7
[root@oel7node00 ~]# ip route
default via 192.168.7.50 dev enp0s8 proto static metric 100
default via 10.0.2.2 dev enp0s3 proto static metric 101
10.0.2.0/24 dev enp0s3 proto kernel scope link src 10.0.2.15 metric 100
172.31.100.0/24 dev enp0s9 proto kernel scope link src 172.31.100.10 metric 100
192.168.7.0/24 dev enp0s8 proto kernel scope link src 192.168.7.60 metric 100
192.168.200.0/24 dev enp0s10 proto kernel scope link src 192.168.200.10 metric 100
The netstat -i information is now provided by the command ip route:
--Until Red Hat 6
[root@oel7node00 ~]# netstat -i
Kernel Interface table
Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
enp0s3 1500 66 0 0 0 72 0 0 0 BMRU
enp0s8 1500 1201 0 0 0 687 0 0 0 BMRU
enp0s9 1500 2 0 0 0 2 0 0 0 BMRU
enp0s10 1500 2 0 0 0 7 0 0 0 BMRU
lo 65536 0 0 0 0 0 0 0 0 LRU
--As of Red Hat 7
[root@oel7node00 ~]# ip -s link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
RX: bytes packets errors dropped overrun mcast
0 0 0 0 0 0
TX: bytes packets errors dropped carrier collsns
0 0 0 0 0 0
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
link/ether 08:00:27:4c:63:1b brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
5860 66 0 0 0 0
TX: bytes packets errors dropped carrier collsns
5662 72 0 0 0 0
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
link/ether 08:00:27:2b:ca:66 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
131645 1237 0 0 0 0
TX: bytes packets errors dropped carrier collsns
223396 704 0 0 0 0
4: enp0s9: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
link/ether 08:00:27:cc:fb:2e brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
120 2 0 0 0 0
TX: bytes packets errors dropped carrier collsns
120 2 0 0 0 0
5: enp0s10: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
link/ether 08:00:27:6f:7e:47 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
120 2 0 0 0 0
TX: bytes packets errors dropped carrier collsns
558 7 0 0 0 0
The netstat -g information is now provided by the command ip maddr:
--Until Red Hat 6
[root@oel7node00 ~]# netstat -g
IPv6/IPv4 Group Memberships
Interface RefCnt Group
--------------- ------ ---------------------
lo 1 all-systems.mcast.net
enp0s3 1 all-systems.mcast.net
enp0s8 1 all-systems.mcast.net
enp0s9 1 all-systems.mcast.net
enp0s10 1 all-systems.mcast.net
lo 1 ff02::1
lo 1 ff01::1
enp0s3 1 ff02::1
enp0s3 1 ff01::1
enp0s8 1 ff02::1
enp0s8 1 ff01::1
enp0s9 1 ff02::1
enp0s9 1 ff01::1
enp0s10 1 ff02::1
enp0s10 1 ff01::1
--As of Red Hat 7
[root@oel7node00 ~]# ip maddr
1: lo
inet 224.0.0.1
inet6 ff02::1
inet6 ff01::1
2: enp0s3
link 01:00:5e:00:00:01
inet 224.0.0.1
inet6 ff02::1
inet6 ff01::1
3: enp0s8
link 01:00:5e:00:00:01
inet 224.0.0.1
inet6 ff02::1
inet6 ff01::1
4: enp0s9
link 01:00:5e:00:00:01
inet 224.0.0.1
inet6 ff02::1
inet6 ff01::1
5: enp0s10
link 01:00:5e:00:00:01
inet 224.0.0.1
inet6 ff02::1
inet6 ff01::1
LSOF
lsof is no longer included on the OS minimal installation, but not considered as obsolete or deprecated, therefore simply use yun to intall the missing package:
[root@oel7node00 ~]# which lsof
/usr/bin/which: no lsof in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
[root@oel7node00 ~]# yum install lsof
Loaded plugins: ulninfo
Resolving Dependencies
--> Running transaction check
---> Package lsof.x86_64 0:4.87-4.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
=========================================================================================================================================================
Package Arch Version Repository Size
=========================================================================================================================================================
Installing:
lsof x86_64 4.87-4.el7 ol7_latest 330 k
Transaction Summary
=========================================================================================================================================================
Install 1 Package
Total download size: 330 k
Installed size: 927 k
Is this ok [y/d/N]: y
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
lsof-4.87-4.el7.x86_64.rpm | 330 kB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : lsof-4.87-4.el7.x86_64 1/1
Verifying : lsof-4.87-4.el7.x86_64 1/1
Installed:
lsof.x86_64 0:4.87-4.el7
Complete!