1.查看和操控网络接口
1.ifconfig [接口名][参数]
ifconfig 用于配置和显示系统网络接口。如没有给出参数, ifconfig 显示当前所有有效接口的状态。如给定单个接口名作为参数,它只显示给出的那个接口的状态; 如果给出一个 -a 参数,它会显示所有接口的状态,包括那些停用的接口。
? 接口 网络接口名称,例如第一个以太接口 eth0 。
? up 此选项激活接口。
? down 此选项使接口关闭。
? [-]arp 允许或禁止在接口上使用 ARP 协议。
? [-]allmulti 允许或禁止 组播模式(all-multicast) 。 如果选用,则接口可以接收网络上的所有组播分组。
? metric N 将接口度量值设置为整数 N。 (译注:度量值表示在这个路径上发送一个分组的成本,就是通过多少个路由)
? mtu N 此选项设定接口的最大传输单元 MTU。
? netmask [子网掩码] 为接口设定 IP 网络掩码。缺省值通常是 A,B或 C 类的网络掩码 (由接口的 IP 地址推出),但也可设为其它值。
? [-]broadcast [广播地址]如果给出了地址参数, 则可以为接口设定该协议的广播地址。 否则,为接口设置(或清除) IFF_BROADCAST 标志。
? IP 地址 为接口分配的 IP 地址。
2.# link encap 表示网络连接的类型,Ethernet 是以太网
# HWaddr 是网络接口的硬件地址
# Inet addr 是网络接口的 ip 地址,Bcast 是网络的广播地址,Mask 是子网掩码
# UP BROADCAST RUNNING MULTICAST 表示网络接口的运行状态,MTU:最大传送单元 Metric:接口度量
# RX 和 TX 是网络接口收发包的情况
# conllisions 表示以太网发生冲突的次数,如果该值过高,就要考虑网络硬件连接可能发生了问题
lo 不是一个真正的网络接口,是一个特殊的模拟出来的网络接口,每个系统都有它,叫回环接口(loop),其 ip 永远为 127.0.0.1,子网掩码为 255.0.0.0。回环接口为系统提供一个单机网络环境,一般用于网络程序的调试,许多程序的运行也需要这个接口。
3.用“ifconfig –a ”查看到所有安装好的网络接口(无论接口有没有被启动和配置好),此时可能情况有三种:
? 情况 1:仍然没有看到接口,那么就说明网卡硬件连接或者驱动出现问题,导致系统无法识别此网卡了,此时应该检查硬件或者重新安装驱动,如果仍然无法识别,那么就需要考虑更换网卡。
? 情况 2:看到接口了,但是输出中没有 Inet addr、Bcast、Mask 等参数出现,那就表示网卡硬件没有问题,是接口没有配置好,此时就应该查看并编辑相关配置文件对接口进行配置。
? 情况 3:看到接口了,并且接口一切正常,那么就可能是接口未开启,可以使用 ifconfig 命令来开启接口
4.用 ifconfig 来改变接口的配置参数是临时的,也就是说,如果系统重启,或者网络重启的话,这些改变的参数是不会保留下来的.
如果在远程连接主机的话,不要轻易改动网络参数,这很可能导致掉线
2.配置tcp/ip参数
1.系统中重要的有关网络配置文件:
/etc/services、/etc/host.conf 、 /etc/nsswitch.conf 、 /etc/xinetd.conf, /etc/modules.conf 、/etc/sysconfig/network、/etc/hosts、/etc/resolv.conf 和/etc/sysconfig/ network-scripts/ifcfg-ethN。这些文件都支持由"#"开头的注释
2. /etc/sysconfig/network 文件用来为主机设定全局网络参数(也即不是针对单个网络接口的参数)
NETWORKING= <value>:
表示是否配置这个网络, 可以是如下值:
yes — 配置网络
no — 不配置网络
HOSTNAME= <value>:
主机名,一般来说,这个主机名应该是一个完整的 的 FQDN ( Fully Qualified Domain Name) ,也即主机名+ 域名,如 hostname.expample.com 。但是主机为 名并非必须为 FQDN ,你可以给主机取一 个任意格式的名字
GATEWAY=<value>:
值为网络的默认网关IP地址,/etc/sysconfig/network 中的 GATEWAY 参数会被/etc/sysconfig/network-scripts/ifcfg-eth0 中的 GATEWAY 参数覆盖
3./etc/sysconfig/network-scripts/ifcfg-ethN
*对于主机上的每个网络接口都需要进行配置,在 Linux 中每个网络接口都有一个独立的配置文件,文件名一般为:/etc/sysconfig/network-scripts/ifcfg-ethN,其中 N 是一个数字,代表主机网络接口的序号
*BOOTPROTO= <value>:
<value> 值表示采用何种方式来配置主机网络参数, 可以是如下值:
? none/static — 手动配置此主机网络
? bootp — 使用 BOOTP 协议动态配置主机网络参数.
? dhcp — 使用 dhcp 协议动态配置主机网络参数.
DEVICE= <value>:
<value> 值 表示物理设备的名称, 也即网卡的名称
DEFROUTE= <value>:
<value> 值 表示是否将本网络接口作为网络的默认路由(default route)
DNS{1,2}= <value>:
<value> 值表示 DNS 服务器的 IP 地址, 可以添加两个 DNS器 服务器 DNS1 和 和 DNS2, 如果 PEERDNS 参数值为 yes , 那此 么此 DNS 参数值将覆盖 /etc/resolv.conf 文件中的DNS 服务器配置.
HWADDR= <value>:
<value> 值为 太网卡的 MAC 地址, 是如下格式一个 12 位的16 进制串 AA:BB:CC:DD:EE:FF. 如果主机上有两张以上的网卡这个参数就是必须的, 可以保证 不管网卡加载次
序如何, 设备名都不会改变, 进而能够让正确的配置文件来对其进行配置.
IPADDR= <value>:
<value> 值为口 当前网络接口 IP 地址.
IPV4_FAILURE_FATAL= <value>:
<value> 值 指的是,当 IPv4 和 IPv6 配置都可用 时,IPv4 配置失败是是否视为设备激活失败
IPV6INIT= <value>:
<value> 值 表示 是否对配置主机的IPv6 网络参数
NETMASK= <value>:
<value> 值为 当前网络接口的 子网掩码.NM_CONTROLLED= <value> <value> 值 表示许 此网络接口是否允许 RHEL 和 和 CentOS 中
具 的默认图形界面的网络配置工具 NetworkManager 来进行配置
ONBOOT= <value>:
<value> 值 表示是否在启动时激活此网络接口
PEERDNS= <value>:
<value> 值表示是否允许接口配置文件中的 DNS 参数值覆盖 /etc/resolv.conf 文件中的 DNS 服务器配置
PEERROUTES= <value>
SRCADDR= <value>:
表示为从这个接口发出去的数据包指定另外一个源地址<value> ( 而不是接口的 IP 地址).
USERCTL= <value>:
<value>除 值表示是否允许除 root 用户之外的用户配置此网络接口
*手动配置:
BOOTPROTO= none/static
IPADDR=ip地址
GATEWAT=网关,生效的只有一个,最后一个生效
NETMASK=子网掩码
DNS{1,2}=域名服务器ip地址
*service network restart重启网络生效
*ping 主机ip或主机名:测试网络能否联通
-c 数字 ping的数据包个数
*dig 域名:测试dns,显示从受请求的域名服务器返回的答复
4./etc/resolv.conf
该文件是 DNS 客户端配置文件,它的格式很简单,每行以一个关键字开头,后接配置参数。最主要是 nameserver 关键字,如果没指定 nameserver 就找不到 DNS 服务器,其它关键字都是可选的
nameserver = <value>:
<value> 为 DNS 服务器的 IP 地址, 总共可以指定 3 个 DNS器 服务器 IP 地址
domain= <value>:
<value> 值表示 本地域名
search= <value>:
<value> 值表示 域名的搜索列表, 默认情况下仅包括本地域名
5./etc/hosts
是一个用于储存计算机网络中各节点信息的文件。这个文件负责将主机名映射到相应的 IP 地址。hosts 文件通常用于补充或取代小型网络中 DNS 的功能。和 DNS 不同的是,用户可以直接对/etc/hosts 文件进行控制
在默认情况下, /etc/hosts 仅包括两行,分别用于指定 IPv4 网络中和 IPv6 网络中回环接口的主机名(默认情况下为 localhost.localdomain):
# IP 地址 主机名(Hostname) 主机别名(Alias)