一、练习
1.显示当前系统root、centos或user1用户的默认shell和UID?
# 法一
[root@wybaron_host1015 ~]# grep "^\(root\|centos\|user1\)\b" /etc/passwd | cut -d: -f3,7
0:/bin/bash
1004:/bin/bash
1005:/bin/bash
# 法二
[root@wybaron_host1015 ~]# grep -E "^(root|centos|user1)\b" /etc/passwd | cut -d: -f3,7
0:/bin/bash
1004:/bin/bash
1005:/bin/bash
2.找出/etc/rc.d/init.d/functions文件中某单词(仅限单词,不算带有“_”的函数)后面跟一个小括号的行?
[root@wybaron_host1015 ~]# egrep -o "[[:alpha:]]+\b\(\)" /etc/rc.d/init.d/functions
checkpid()
checkpids()
kill()
run()
pidof()
daemon()
killproc()
pidfileofproc()
pidofproc()
status()
success()
failure()
passed()
warning()
stage()
success()
failure()
passed()
warning()
action()
strstr()
file()
sec()
true()
false()
sysctl()
3.使用echo输出一绝对路径,如 /etc/httpd/conf.d
1)使用egrep取出其基名?
[root@wybaron_host1015 ~]# echo "/etc/httpd/conf.d" | egrep -o "[^/]+/?$"
2)使用egrep取出其父目录的路径?
[root@wybaron_host1015 ~]# echo "/etc/httpd/conf.d" | egrep -o "^/.*/"
/etc/httpd/
4.找出ifconfig命令结果中1-255之间的数值?
参考:有误
[root@wybaron_host1015 ~]# ifconfig | egrep "\<[1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]\>"
5.找出ifconfig命令结果中的IP地址(仅考虑IPV4)?
[root@wybaron_host1015 ~]# ifconfig | egrep "inet[[:space:]]" | egrep "[[:digit:]]{,3}"
inet 172.16.22.4 netmask 255.255.0.0 broadcast 172.16.255.255
inet 192.168.20.1 netmask 255.255.255.0 broadcast 192.168.20.255
inet 127.0.0.1 netmask 255.0.0.0
[root@wybaron_host1015 ~]# ifconfig | egrep -o "inet[[:space:]][[:digit:]]{,3}.[[:digit:]]{,3}.[[:digit:]]{,3}.[[:digit:]]{,3}"
inet 172.16.22.4
inet 192.168.20.1
inet 127.0.0.1
二、补充
IPV4地址
1)分类
类别 | 二进制 | 十进制 |
---|---|---|
A | 0 0000000 00000000 00000000 00000000-0 1111111 11111111 11111111 11111111 | 0.0.0.0-127.255.255.255 |
B | 10 000000 00000000 00000000 00000000-10 111111 11111111 11111111 11111111 | 128.0.0.0-191.255.255.255 |
C | 110 00000 00000000 00000000 00000000-110 11111 11111111 11111111 11111111 | 192.0.0.0-223.255.255.255 |
D | 1110 0000 00000000 00000000 00000000-1110 1111 11111111 11111111 11111111 | 224.0.0.0-239.255.255.255 |
E | 11110 000 00000000 00000000 00000000-11110 111 11111111 11111111 11111111 | 240.0.0.0-255.255.255.255 |
注:
a)A类地址中0段、127段不可用。
b)D类地址是组播地址。
c)E类地址位保留类,其中255段地址不可用。
d)其中除开0段、127段、255段之外,其中某些部分地址也不能作为普通ip地址使用。
e)其中有一部分地址还作为了私有地址,不能在公网上使用。
2)特殊地址
特殊地址分类:源地址、环回(闭环)地址、广播地址。
| 网络号 | 子网号 | 主机号 | 描述 |
---|---|---|---|---|
特殊源 | 全0 | 无 | 全0 | 网络上所有主机 |
HostID | 网络上特定的主机 | |||
环回 | 127 | 无 | 任何值 | 环回(闭环) |
广播 (组播) | 全1 | 无 | 全1 | 受限的广播地址(永远不被转发) |
NetID | 无 | 以网络的目的向NetID广播 | ||
SubNetID | 以子网为目的向SubNetID广播 | |||
全1 | 以所有子网为目的向所有子网广播 |
3)私有地址
私网地址出现是为了解决公网地址不够使用而产生的,其是从A类、B类、C类地址中拿出一部分作为私有地址,这些ip地址在长长情况下是不能连接至互联网骨干网的,如果有需要,需要将私网地址转换成公网地址,也就是需要NAT(网络地址转换),通常使用路由器进行NAT转换
私有地址范围
所属类别 | 范围1 | 范围2 |
---|---|---|
A | 10.0.0.0-10.255.255.255 | 10.0.0.0/8 |
B | 172.16.0.0-172.31.255.255 | 172.16.0.0/12 |
C | 192.168.0.0-192.168.255.255 | 192.168.0.0/16 |