Linux网络编程基础
Posted 曦樂~
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux网络编程基础相关的知识,希望对你有一定的参考价值。
网络的简单定义:一些互相连接的,自治的计算机集合。
互联网:泛指由路由器互联成的网络。
IP地址:由网络号和主机号组成,唯一标识一台主机。
ipv4:32位,用“ . ”分成4个段,每个段是 8 个位(值为 0-255),用 10 进制表示。
ipv6:128位,用“ : ”分成 8 个段,每个段 16 个位,用 4 个 16 进制数表示。
linux查看ip地址的命令:ifconfig
显示ip地址和测试地址,其中测试地址127.0.0.1在所有电脑上都是一样的。
windows查看ip地址:ipconfig
MAC地址(物理地址):48位,固化在计算机适配器的ROM中的地址。便于寻址。
端口:主机上应用程序的代号
查看端口:netstat -natp,端口不变
套接字:通过它进行消息的发送接收,进程间通讯(跨越主机)。
套接字地址:ip+port(端口)
网络协议:网络规则的集合,什么代表什么
- 常见协议:
- HTTP:超文本传输协议
- TCP:传输控制协议
- UDP:用户数据报协议
- IP:网际协议(互联网协议)
- 分层:ISO的OSI七层,Tcp/IP四层,教学模型五层。
- 确定本地主机是否能与另一台主机交换数据报:ping IP地址或主机域名
-
服务器端(一个)--->客户端(多个主动连接服务器端)
平常用域名,如:www.baidu.com
服务器转换成ip。要先启动服务器再用客户端链接。
- UDP:用户数据报协议
- TCP:传输控制协议
- HTTP:超文本传输协议
Linux用户管理Linux网络基础
LINUX 网络基础
一. 网络配置文件
1./etc/sysconfig/network 文件
功能:设置主机最基本的网络信息,包括主机名、默认网关等信息
内容:
① NETWORKING= yes/no 设定启动系统时是否启用网络服务。
② HOSTNAME= www.sinaNaN 设定主机名(不是NETBIOS名)。
③ GATEWAY= 192.168.0.1 设定默认网关。
④ GATEWAYDEV= eth0 设定网关接口。
⑤ FORWARD_IPV4= yes/no 设定LINUX是否支持IP转发。
2./etc/sysconfig/network-scripts/ifcfg-ethX(X取值0,1,2,…….n)
功能:用于配置以太网接口卡的初始信息,。
内容:
① ONBOOT= yes 在设定启动时,是否激活网卡。
② DEVICE= eth0 设定物理设备名称。
③ BOOTPROTO= none|static|dhcp|bootp 设定网卡启动协议。
④ NETMASK= 255.255.255.0 设定子网掩码。
⑤ BROADCAST= 192.168.3.255 设定广播码。
⑥ NETWORK= 192.168.3.0 设定网络号。
⑦ IPADDR= 192.168.3.2 设定主机IP。
注意:一个以太网卡如何绑定多个IP地址?
实例:设定主机中存在的eth0设备,它的ip地址是:192.168.3.1/24,要求给eth0再绑定ip:192.168.5.1
① # cp/etc/sysconfig/network-scripts/ifcfg-eth0 至
/etc/sysconfig/network-scrppts/ifcfg-eth0:0(x的取值从0开始)
② # vi /etc/sysconfigt/network-scrpts/ifcfg-eth0:0
修改后:
DEVICE=eth0:0
ONBOOT=YES
BOOTPROTO=NONE
IPADDR=192.168.5.1
NETMASK=255.255.255.0
NETWORK=192.168.5.0
BROADCAST=192.168.5.255
3./etc/resolv.conf
功能:域名服务客户端的配置文件,用于指定域名服务器的位置
内容:
domainname linux.cn 设定主机域名。
search linux.cn 设定搜索列表。
nameserver 192.168.0.254 设定DNS服务器的IP(最多三个)。
4./etc/host.conf
功能:配置DNS解析顺序及解析相关参数
文件选项:order bind,hosts/hosts,bind 配置解析顺序
multi on/off 设置hosts文件中是否允许一主机名对应多个IP地址
spoof on/warn/nowar 设置是否记录欺骗的主机地址
nospoolf on/off 是否防止主机欺骗
5./etc/hosts
功能:配置主机名和IP的对应关系,可利用该文件进行名称解析
文件格式:
IP地址 主机名 主机别名
192.168.0.1 www.abc.com www
二. 常用的网络服务命令.
1. ifconfig
功能:
① 显示网络接口的配置信息。
② 激活/禁用某个网络接口。
③ 配置网络接口IP地址。
格式:
① # ifconfig [<接口名>]
② # ifconfig <接口名>(up/down)
③ # ifconfig <接口名> ip地址 netmask 子网掩码
实例:
⑴ # ifconfig
⑵ # ifconfig eth0
⑶ #ifconfig eth0 down
⑷ # ifconfig eth0 192.168.3.3 netmask255.255.255.0
2. ifup
功能: 激活网络接口。
格式: ifup <设备名>
实例: # ifup eth0
3. ifdown
功能: 禁用网络接口。
格式: ifdown <设备名>
实例: # ifdown eth0
4. ping
功能:向目标主机发送icmp数据包(检测网络)。
5. netstat
功能:显示网络的连接状态。
格式:# netstat [参数]
参数:-i 显示接口状态信息
-lpe 显示所监控中的服务器的socket和正使用的socket程序信息
-nr 显示内核路由表信息
-t/-u 显示TCP/UDP连接状态
实例:#netstat -nr
#netstat -lpe
#netstat -t
6. traceroute
功能:跟踪路由
实例:#traceroute www.ahxh.cn
7. hostname
功能:显示主机名
实例:#hostname
8. route
功能:
(1) 显示路由表
(2) 添加路由
(3) 删除路由
实例:
(1)#route(显示当前系统的路由表信息)
(2)#routeadd –net 192.168.0.0/24 dev eth0
(3)#routeadd –host 192.168.3.2 dev eth1
(4)#routeadd –host 192.168.1.3 gw 192.168.1.1
(5)#routeadd –net 192.168.3.0 netmask 255.255.255.0 gw 192.168.3.1
(6)#routeadd default gw 192.168.0.1
(7)#routedel –host 192.168.3.2. dev eth1
(8)#routedel –net 192.168.0.0/24 dev eth0
(9)#routedel default gw 192.168.0.1
9. arp
功能:维护arp地址表
实例:
#arp (显示arp地址表)
# arp –s 192.168.3.1 00:60:08:27:ce:b2(向arp地址表中添加记录)
#arp –d 192.168.3.1(删除arp地址表的记录)
#arp -f (从/etc/ethers文件中读取添加的记录)
10.netconfig
功能:配置网络接口选项
格式:#netconfig [选项]
选项:-d 接口名 指定接口名
实例:#netconfig –d eth0
三. 服务的启动方式
1. 守护进程的定义
linux系统上提供服务的程序是由运行在后台的守护程序来执行的,这些后台守护程序监听特定端口上的客户机的请求,并且为客户机提供相应的服务,我们称这个后台的守护程序称为“守护进程”,又称“服务”。
2. 服务的运行方式
⑴ 独立运行方式:独立运行的服务由init脚本负责管理,并且每项服务只监听该服务指定的端口,服务的启动脚本存放在/etc/rc.d/init.d。
⑵ 超级服务:超级服务由xinetd管理,xinetd同时创建多个socket和监听多个端口,由xinetd管理的服务的配置文件存放在/etc/xinetd.d目录中。
3. 服务的启动、关闭与重启
⑴ 独立服务的启动、关闭与重启
手工方式:
①# /etc/rc.d/init.d/脚本名 <start|restart|stop>
实例:
#/etc/rc.d/init.d/network restart
②# service 服务名 <start|restart|stop>
实例:
#service httpd start
自动方式:
①# ntsysv [- -level 级别]
实例:
# ntsysv(设置当前运行级别要运行的服务)
# ntsysv -–level 5(设置启动5号运行级别要运行的服务)
②# chkconfig[- -list | - -level 级别] [服务名 <on/off>]
实例:
#chkconfig –-list(显示各项服务在每个运行级别中的状态)
#chkconfig –-level3 dhcpd on
⑵ 超级服务器的启动、关闭与重启
手工方式:
①#/etc/rc.d/init.d/xinetd <stop|restart|start>
②# service xinetd <stop|start|restart>
自动方式:
①# ntsysv[--level] 级别
②# chkconfig [--list|--level] 级别 服务名 <on/off>
本文出自 “Linux狱长” 博客,请务必保留此出处http://sswqzx.blog.51cto.com/2494644/1973543
以上是关于Linux网络编程基础的主要内容,如果未能解决你的问题,请参考以下文章