网络基础管理
文章目录
回归传统命名
修改网卡配置文件
[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# mv ifcfg-ens33 ifcfg-eth0
[root@localhost network-scripts]# vim ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=eth0 把ens33改成eht0
UUID=03be31f5-a3c1-4f8d-88b3-aea6e85c869f
DEVICE=eth0 把ens33改成eth0
ONBOOT=yes
编辑/etc/default/grub配置文件,在以GRUB_CMDLINE_LINUX开头的行内rhgb的前面加上net.ifnames=0 biosdevname=0(如果没有装biosdevname还要装上)
[root@localhost ~]# vim /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap net.ifnames=0 biosdevname=0 rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
为grub2生成其配置文件
[root@localhost ~]# grub2-mkconfig -o /etc/grub2.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-693.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-693.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-fd0bcf5782d24ba5b903b175c35f328e
Found initrd image: /boot/initramfs-0-rescue-fd0bcf5782d24ba5b903b175c35f328e.img
done
重启系统
[root@localhost ~]# reboot
网络管理常用命令
ifconfig
查看当前处于活动状态的所有网络接口
[root@localhost ~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.199.137 netmask 255.255.255.0 broadcast 192.168.199.255
inet6 fe80::4187:a94b:75e9:7108 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:74:ef:c7 txqueuelen 1000 (Ethernet)
RX packets 694 bytes 54992 (53.7 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 349 bytes 34811 (33.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
仅查看eth0网卡状态
[root@localhost ~]# ifconfig eth0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.199.137 netmask 255.255.255.0 broadcast 192.168.199.255
inet6 fe80::4187:a94b:75e9:7108 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:74:ef:c7 txqueuelen 1000 (Ethernet)
RX packets 741 bytes 58748 (57.3 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 375 bytes 38221 (37.3 KiB)
查看所有网卡状态信息, 包括禁用和启用
[root@localhost ~]# ifconfig -a
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.199.137 netmask 255.255.255.0 broadcast 192.168.199.255
inet6 fe80::4187:a94b:75e9:7108 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:74:ef:c7 txqueuelen 1000 (Ethernet)
RX packets 770 bytes 60932 (59.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 386 bytes 39931 (38.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
给网卡配IP(临时生效)
[root@localhost ~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.199.137 netmask 255.255.255.0 broadcast 192.168.199.255
inet6 fe80::4187:a94b:75e9:7108 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:74:ef:c7 txqueuelen 1000 (Ethernet)
RX packets 1003 bytes 78824 (76.9 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 502 bytes 52367 (51.1 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
eth0:1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.16.12 netmask 255.255.255.0 broadcast 192.168.16.255
ether 00:0c:29:74:ef:c7 txqueuelen 1000 (Ethernet)
网卡配置信息含义如下:
UP: 网卡处于活动状态
BROADCAST: 支持广播
RUNNING: 网线已接入
MULTICAST: 支持组播
MTU: 最大传输单元(字节),即此接口一次所能传输的最大封包
inet: 显示IPv4地址行
inet6: 显示IPv6地址行
link/enther: 指设备硬件(MAC)地址
txqueuelen: 传输缓存区长度大小
RX packets: 接收的数据包
TX packets: 发送的数据包
errors: 总的收包的错误数量
dropped: 由于各种原因, 导致拷贝在内存过程中被丢弃
collisions: 网络信号冲突情况, 值不为0则可能存在网络故障
IP
语法:ip [ OPTIONS ] OBJECT { COMMAND | help }
OBJECT:
link: 网络接口属性
addr:协议地址
route:路由
查看网络接口所有地址
[root@localhost ~]# ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1
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 mode DEFAULT qlen 1000
link/ether 00:0c:29:74:ef:c7 brd ff:ff:ff:ff:ff:ff
显示报文统计信息
[root@localhost ~]# ip -s link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1
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: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
link/ether 00:0c:29:74:ef:c7 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
94690 1218 0 0 0 0
TX: bytes packets errors dropped carrier collsns
63275 592 0 0 0 0
启用或禁用网络接口
命令:ip link set DEV {up|down}
[root@localhost ~]# ip link set lo down
[root@localhost ~]# ip link show
1: lo: <LOOPBACK> mtu 65536 qdisc noqueue state DOWN mode DEFAULT qlen 1
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 mode DEFAULT qlen 1000
link/ether 00:0c:29:74:ef:c7 brd ff:ff:ff:ff:ff:ff
[root@localhost ~]# ip link set lo up
[root@localhost ~]# ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1
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 mode DEFAULT qlen 1000
link/ether 00:0c:29:74:ef:c7 brd ff:ff:ff:ff:ff:ff
添加IP地址
命令: ip addr add ADDRESS dev DEV
[root@localhost ~]# ip addr add 192.168.16.12/24 dev eth0
[root@localhost ~]# ip addr show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:74:ef:c7 brd ff:ff:ff:ff:ff:ff
inet 192.168.199.137/24 brd 192.168.199.255 scope global dynamic eth0
valid_lft 1634sec preferred_lft 1634sec
inet 192.168.16.12/24 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::4187:a94b:75e9:7108/64 scope link
valid_lft forever preferred_lft forever
删除IP地址
命令: ip addr del ADDRESS dev DEV
[root@localhost ~]# ip addr del 192.168.16.12/24 dev eth0
[root@localhost ~]# ip addr show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:74:ef:c7 brd ff:ff:ff:ff:ff:ff
inet 192.168.199.137/24 brd 192.168.199.255 scope global dynamic eth0
valid_lft 1450sec preferred_lft 1450sec
inet6 fe80::4187:a94b:75e9:7108/64 scope link
valid_lft forever preferred_lft forever
查看网络接口的地址
命令: ip addr show DEV
[root@localhost ~]# ip addr show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:74:ef:c7 brd ff:ff:ff:ff:ff:ff
inet 192.168.199.137/24 brd 192.168.199.255 scope global dynamic eth0
valid_lft 1450sec preferred_lft 1450sec
route
以数字方式显示各主机或端口等相关信息
[root@localhost ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.199.2 0.0.0.0 UG 100 0 0 eth0
192.168.199.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
增加路由
语法:route add [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]
增加网段路由
[root@localhost ~]# route add -net 172.16.12.0/24 gw 172.16.12.2 dev eth1
[root@localhost ~]# route add -net 0.0.0.0/0 gw 172.16.12.2 dev eth1
增加主机路由
[root@localhost ~]# route add -host 172.16.12.128 gw 172.16.12.2
删除路由
[root@localhost ~]# route del -net 172.16.12.0/24
[root@localhost ~]# route del -net 0.0.0.0/0 gw 172.16.12.2
hostname与hostnamectl
hostname 临时修改主机名
[root@localhost ~]# hostname tom
[root@localhost ~]# cat /etc/hostname
localhost.localdomain
hostnamectl 永久修改主机名
[root@localhost ~]# hostnamectl set-hostname jerry
[root@localhost ~]# cat /etc/hostname
jerry
注意:
在Linux中以命令方式修改网络配置只在当前状态有效,重启后将失效。故若想使修改的配置重启后依然有效,则必须编辑配置文件进行配置的修改。
网络相关配置文件
网络接口配置文件
网络接口即网卡,其配置文件的路径是/etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=static
NAME=eth1
UUID=03be31f5-a3c1-4f8d-88b3-aea6e85c869f
DEVICE=eth1
ONBOOT=yes
IPADDR=172.16.12.130
NETMASK=255.255.255.0
GATEWAY=172.16.12.2
DNS1=172.16.12.2
网卡配置说明
BOOTPROTO=none 引导协议,可选值有{static|none|dhcp|bootp}。
NM_CONTROLLED NM是NetworkManager的简写,NM是由RHEL研发的在RHEL6中取代network脚本来实现网络管理、配置的服务脚本
可选值有{ yes | no }
此项是设定此网卡是否接受NM控制。CentOS6建议设为“no”
TYPE 接口类型。
UUID 设备的惟一标识
HWADDR 硬件地址,要与硬件中的地址保持一致,可省略
IPADDR=172.16.12.130 固定IP地址
PREFIX=24 子网掩码
NETMASK=255.255.255.0 子网掩码
GATEWAY=172.16.12.2 默认网关
DNS1=172.16.12.2 第一个DNS服务器指向
DNS2 第二个DNS服务器指向
DNS3 第三个DNS服务器指向
DEVICE=eth1 关联的设备名称,要与文件名的后半部"INTERFACE_NAME"保持一致
NAME=“eth1” 连接名称
ONBOOT=yes 在系统引导时是否自动激活此网络接口,可选值有{ yes | no }
DEFROUTE=yes 将接口设定为默认路由[yes|no]
USERCTL={yes|no} 是否允许普通用户控制此接口的启用与禁用
PEERDNS={yes|no} 是否在BOOTPROTO为dhcp时接受由dhcp服务器指定的DNS地址,此项设为yes时获得的DNS地址将直接覆盖至/etc/resolv.conf文件中
路由配置文件
路由配置文件的路径是/etc/sysconfig/network-scripts/route-INTERFACE_NAME
添加格式一:DEST via NEXTHOP
[root@localhost ~]# vi /etc/sysconfig/network-scripts/route-ens33
172.16.12.0/24 via 172.16.12.2
添加格式二:
[root@localhost ~]# vi /etc/sysconfig/network-scripts/route-ens33
ADDRESS0=172.16.12.0
NETMASK0=255.255.255.0
GATEWAY0=172.16.12.2
netstat
用于查看网络状态
[root@localhost ~]# netstat -antlp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1109/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1359/master
tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN 1414/sshd: root@pts
tcp 0 0 192.168.199.137:22 192.168.199.1:61016 ESTABLISHED 1414/sshd: root@pts
tcp6 0 0 :::22 :::* LISTEN 1109/sshd
tcp6 0 0 ::1:25 :::* LISTEN 1359/master
tcp6 0 0 ::1:6010 :::* LISTEN 1414/sshd: root@pts
SS
ss是一种网络状态查看工具,取代netstat
[root@seancheng ~]# ss -antlp
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:22 *:* users:(("sshd",pid=889,fd=3))
LISTEN 0 100 127.0.0.1:25 *:* users:(("master",pid=1007,fd=13))
LISTEN 0 128 :::22 :::* users:(("sshd",pid=889,fd=4))
LISTEN 0 100 ::1:25 :::* users:(("master",pid=1007,fd=14))
常见端口
http 80/tcp
https 443/tcp
ssh 22/tcp
ftp 20,21/tcp
mysql 3306/tcp
rsync 873/rsync
redis 6379/tcp
网络故障排查
- 网络故障分为硬件/软件故障
- 网卡损坏
- 链路故障
- 网卡驱动不兼容
- 网络排查思路
- ping本地回环口, 确定本机TCP/IP协议栈是否正常
- ping本机IP地址, 确定本地设备以及驱动是否正常
- ping同网段主机, 确定二层网络是否正常工作
- ping网关地址, 确定本地与网络是否正常
- ping公网地址, 确定本地路由是否正常
- ping公网域名, 确定DNS客户端是否正常
- 服务故障排查思路
- 使用telnet检测端口是否开放
- 检查服务端防火墙以及SElinux
- 检查相应的权限是否配置正常
- 检查日志是否有异常
- 检查完毕后持续测试
题目
1.如何查看系统中每个ip的连接数
2.请列出下列服务使用的端口,http,ftp,ssh,telnet,mysql,dns
3.如何在虚拟机上新增加一块网卡,并配置IP为172.16.0.10,指定网关为172.16.0.1
4.详细描述dns解析过程,以访问www.baidu.com为例
5.如何查看系统中运行了多少个进程
6.如何查看系统中启动了哪些端口
7.如何查看是否开启80端口,及查看sshd进程是否存在
8.列出所有处于监听状态的tcp端口
9.查看所有的端口信息, 包括 PID 和进程名称
[root@localhost ~]# netstat -n | awk '/^tcp/ {print $5}' | awk -F: '{print $1}'
192.168.199.1
http 80
ftp 20,21
ssh 22
telnet 23
mysql 3306
dns 53
3.虚拟机->设置->添加->网络适配器
[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# cp ifcfg-eth0 ifcfg-eth1
[root@localhost network-scripts]# vim ifcfg-eth1
[root@localhost network-scripts]# cat ifcfg-eth1
TYPE=Ethernet
BOOTPROTO=static
NAME=eth1
DEVICE=eth1
ONBOOT=yes
IPADDR=172.16.0.10
NETMASK=255.255.255.0
GATEWAY=172.16.0.1
DNS1=172.16.12.2
[root@localhost network-scripts]# cd
[root@localhost ~]# systemctl restart network
[root@localhost ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
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 00:0c:29:74:ef:c7 brd ff:ff:ff:ff:ff:ff
inet 192.168.199.137/24 brd 192.168.199.255 scope global dynamic eth0
valid_lft 1799sec preferred_lft 1799sec
inet6 fe80::4187:a94b:75e9:7108/64 scope link
valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:74:ef:d1 brd ff:ff:ff:ff:ff:ff
inet 172.16.0.10/24 brd 172.16.0.255 scope global eth1
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe74:efd1/64 scope link tentative
valid_lft forever preferred_lft forever
[root@localhost ~]# nslookup www.baidu.com
Server: 192.168.199.2
Address: 192.168.199.2#53
Non-authoritative answer:
www.baidu.com canonical name = www.a.shifen.com.
Name: www.a.shifen.com
Address: 182.61.200.7
Name: www.a.shifen.com
Address: 182.61.200.6
[root@localhost ~]# ps -au
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1392 0.0 0.1 115388 2036 tty1 Ss+ 16:07 0:00 -bash
root 1420 0.0 0.1 115392 2092 pts/0 Ss 16:07 0:00 -bash
root 2185 0.0 0.0 151064 1800 pts/0 R+ 17:05 0:00 ps -au
[root@localhost ~]# netstat -a
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:ssh 0.0.0.0:* LISTEN
tcp 0 0 localhost:smtp 0.0.0.0:* LISTEN
tcp 0 0 localhos:x11-ssh-offset 0.0.0.0:* LISTEN
tcp 0 52 localhost.localdoma:ssh 192.168.199.1:52465 ESTABLISHED
tcp6 0 0 [::]:ssh [::]:* LISTEN
tcp6 0 0 localhost:smtp [::]:* LISTEN
tcp6 0 0 localhos:x11-ssh-offset [::]:* LISTEN
udp 0 0 0.0.0.0:46755 0.0.0.0:*
udp 0 0 0.0.0.0:bootpc 0.0.0.0:*
udp 0 0 localhost:323 0.0.0.0:*
udp6 0 0 [::]:ms-sql-s [::]:*
udp6 0 0 localhost:323 [::]:*
raw6 0 0 [::]:ipv6-icmp [::]:* 7
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags Type State I-Node Path
unix 2 [ ACC ] STREAM LISTENING 13312 /run/systemd/private
unix 2 [ ] DGRAM 8457 /run/systemd/notify
unix 2 [ ] DGRAM 8459 /run/systemd/cgroups-agent
unix 2 [ ACC ] STREAM LISTENING 8470 /run/systemd/journal/stdout
unix 5 [ ] DGRAM 8473 /run/systemd/journal/socket
unix 2 [ ] DGRAM 13338 /run/systemd/shutdownd
[root@localhost ~]# netstat -apn | grep 80
[root@localhost ~]# netstat -apn | grep sshd
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1099/sshd
tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN 1416/sshd: root@pts
tcp 0 52 192.168.199.137:22 192.168.199.1:52465 ESTABLISHED 1416/sshd: root@pts
tcp6 0 0 :::22 :::* LISTEN 1099/sshd
tcp6 0 0 ::1:6010 :::* LISTEN 1416/sshd: root@pts
unix 2 [ ] DGRAM 21179 1416/sshd: root@pts
unix 3 [ ] STREAM CONNECTED 19843 1099/sshd
[root@localhost ~]# netstat -lt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:ssh 0.0.0.0:* LISTEN
tcp 0 0 localhost:smtp 0.0.0.0:* LISTEN
tcp 0 0 localhos:x11-ssh-offset 0.0.0.0:* LISTEN
tcp6 0 0 [::]:ssh [::]:* LISTEN
tcp6 0 0 localhost:smtp [::]:* LISTEN
tcp6 0 0 localhos:x11-ssh-offset [::]:* LISTEN
[root@localhost ~]# ss -anpe
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
nl UNCONN 0 0 0:2000683791 * sk=0 cb=0 groups=0x00000551
nl UNCONN 0 0 0:0 * sk=0 cb=0 groups=0x00000000
nl UNCONN 0 0 0:2000683791 * sk=0 cb=0 groups=0x00000551
nl UNCONN 768 0 4:0 * sk=0 cb=0 groups=0x00000000
nl UNCONN 4352 0 4:2180 * sk=0 cb=0 groups=0x00000000
nl UNCONN 0 0 6:0 * sk=0 cb=0 groups=0x00000000
nl UNCONN 0 0 7:740 * sk=0 cb=0 groups=0x00000001
nl UNCONN 0 0 7:1 * sk=0 cb=0 groups=0x00000001