关于Linux网络配置
一:什么是网络接口卡以及如何查看网络接口的网络信息:
在Linux系统中,主机的网络接口卡通常称为“网络接口”,我们可以使用ifconfig命令来查看网络
接口的信息(普通用户使用/sbin/ifconfig):
[root@lht ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:D1:42:3F
inet addr:192.168.5.247 Bcast:192.168.5.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fed1:423f/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:6712 errors:0 dropped:0 overruns:0 frame:0
TX packets:1219 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:590780 (576.9 KiB) TX bytes:156407 (152.7 KiB)
Interrupt:177 Base address:0x1080
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:1654 errors:0 dropped:0 overruns:0 frame:0
TX packets:1654 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:3893045 (3.7 MiB) TX bytes:3893045 (3.7 MiB)
“eth0”是Linux系统中第一块以太网卡的名称,在大多数主机中只有一块物理网卡,因此“eth0”
代表系统中唯一的网络接口。
“lo”是Linux系统中的“环回”网络接口,“lo”并不代表真正的网络接口,而是一个虚拟的网络
接口,其IP地址永远是“127.0.0.1”;“lo”网络接口通常用于对本机的网络测试,这样在主机没
有物理网络接口或物理网络接口没有激活时Linux系统仍然可以完成网络相关的操作;
查看指定接口网络信息:ifconfig 网络接口名称:
[root@lht ~]# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:0C:29:D1:42:3F
inet addr:192.168.5.247 Bcast:192.168.5.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fed1:423f/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:832 errors:0 dropped:0 overruns:0 frame:0
TX packets:139 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:73325 (71.6 KiB) TX bytes:22844 (22.3 KiB)
Interrupt:177 Base address:0x1080
[root@lht ~]#
其中“HWaddr”表示网络接口物理地址(MAC地址),“inet addr”表示网络接口IP地址,“Bcast
”表示网各接口所在网络的广播地址,“Mask”表示网络接口的子网掩码;另外我们还可以用
ifconfig -a查看所有网络接口的网络信息。
二:查看网关地址和路由信息:
1:route:route命令不使用任何命令选项和参数时可以显示当前Linux主机中的路由表信息:
[root@lht ~]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.5.0 * 255.255.255.0 U 0 0 0 eth0
169.254.0.0 * 255.255.0.0 U 0 0 0 eth0
default 192.168.5.1 0.0.0.0 UG 0 0 0 eth0
2:使用ping命令测试与其他主机的网络连接:
ping 目标主机地址
[root@lht ~]# ping 192.168.5.104
PING 192.168.5.104 (192.168.5.104) 56(84) bytes of data.
64 bytes from 192.168.5.104: icmp_seq=1 ttl=64 time=0.123 ms
64 bytes from 192.168.5.104: icmp_seq=2 ttl=64 time=0.176 ms
64 bytes from 192.168.5.104: icmp_seq=3 ttl=64 time=0.163 ms
64 bytes from 192.168.5.104: icmp_seq=4 ttl=64 time=0.818 ms
--- 192.168.5.104 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 0.123/0.320/0.818/0.288 ms
注意:ping命令会持续发送测试包,因此会一直在屏幕上显示每个包的测试结果,使用Ctrl+C组合键
将结束ping命令发送测试数据包;
使用ping命令发送指定数量的数据包进行网络测试连接:
ping -c 测试数据包的数量 目标的主机地址:
[root@lht ~]# ping -c 2 192.168.5.104
PING 192.168.5.104 (192.168.5.104) 56(84) bytes of data.
64 bytes from 192.168.5.104: icmp_seq=1 ttl=64 time=0.146 ms
64 bytes from 192.168.5.104: icmp_seq=2 ttl=64 time=0.170 ms
--- 192.168.5.104 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 0.146/0.158/0.170/0.012 ms
3:使用traceroute命令测试当前主机到目的主机之间经过了哪些网络节点:
traceroute 目的主机地址
[root@lht ~]# traceroute 192.168.5.104
traceroute to 192.168.5.104 (192.168.5.104), 30 hops max, 40 byte packets
1 (192.168.5.104) 0.859 ms 0.255 ms 0.625 ms
三:查看主机名称信息:
1:使用hostname命令查看当前主机名称:
[root@lht ~]# hostname
lht
2:更改主机名称:
[root@lht ~]# hostname lihantuan
[root@lht ~]# hostname
lihantuan
3:使用nslookup查询liuux主机中的域名:
nslookup->输入需要查询的域名->回车
nslookup 待解析的域名
四:网络设置方法:
1:DHCP网络配置:
使用dhclient命令可以从DHCP服务器中申请新的网络配置应用于当前的Linux主机;
2:手工网络配置:
ip地址配置命令:
ifconfig eth0 ip地址 netmask 子网掩码
[root@lht ~]# ifconfig eth0 192.168.5.247 netmask 255.255.255.0
[root@lht ~]#
注意ifconfig命令设置的网络接口属性只在当前系统运行时起效,重启后将按照网络接口配置文件
ifcfg-xxx重新设置网络接口属性;
3:路由配置命令:
添加默认网关路由:
route add default gw 网关地址
[root@lht ~]# route add default gw 192.168.5.104
[root@lht ~]#
删除默认网关:
route del default gw 网关地址:
[root@lht ~]# route del default gw 192.168.5.104
[root@lht ~]#
4:通过修改配置文件进行网络设置:
修改网络接口配置文件ifcfg-xxx,其中\"xxx\"是网络接口名称:
vi /etc/sysconfig/network-scripts/ifcfg-eth0
[root@lht ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
DEVICE=eth0//用于设置网络接口的名称
BOOTPROTO=static//用于设置网络接口是配置为静态地址(static)还是配置为dhcp;
BROADCAST=192.168.5.255
HWADDR=00:0C:29:D1:42:3F
IPADDR=192.168.5.247 //设置网络接口地址
GATEWAY=192.168.5.1 //设置网络接口的默网关
IPV6ADDR=
IPV6PREFIX=
NETMASK=255.255.255.0 //设置网络接口的子网掩码
NETWORK=192.168.5.0
ONBOOT=yes
保存好配置文件后还得重启网络服务:
[root@lht ~]# /etc/init.d/network restart
Shutting down interface eth0: [ OK ]
Shutting down loopback interface: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface eth0: [ OK ]
5:修改主机配置文件:
/etc/sysconfig/network
[root@lht ~]# cat /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=yes
HOSTNAME=lht
GATEWAY=192.168.5.1
如果改了/etc/sysconfig/network里的主机名,则还需更改/etc/hosts里的主机名
[root@lht ~]# cat /etc/host
cat: /etc/host: No such file or directory
[root@lht ~]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 lht localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
再重启系统就生效;
系统管理员还可以通过修改hosts文件添加更多的IP地址与主机的对应记录,hosts文件保存后就会立
刻生效。
6:域名服务器配置文件:/etc/resolv.conf
[root@lihantuan ~]# cat /etc/resolv.conf
nameserver 192.168.6.100
nameserver 192.168.6.90
nameserver配置选项设置DNS服务器的IP地址,文件中最多可以有3个nameserver记录,linux系统会
优先使用文件最上面的nameserver记录,当前面的DNS服务器无效时系统会自动使用后面的DNS服务器
进行域名解析。