Linux网络配置

IPV4点分十进制:

211.34.23.12

网络地址:

主机地址:


主机接入网络:

IP

NETMASK

GATEWAY

HOSTNAME

DNS1

DNS2

DNS3

手动指定

DHCP:Dynmic Host configration Protocol


RHEL5:/etc/modprobe.conf

alias


RHEL6:/etc/udev/rules.d/70-persistent-net.rules


以太网:ethX

ifconfig [ethX]

-a 显示所有接口的配置信息


ifconfig ethX IP/MASK [up|down] 配置网卡信息 # ifconfig eth0:1 192.168.0.3/8 

配置的地址立即生效,但重启网路服务或重启电脑都失效


网络服务:

RHEL5:   /etc/init.d/network {start|stop|restart|status}

RHEL6:   /etc/init.d/NetworkManager {start|stop|restart|status} 

建议禁用RHEL6的方法


网关:

route

add:添加

-host:主机路由

-net:网络路由

-net 0.0.0.0

route add -net | -hots DEST gw NEXTHOP

route add default gw NEXTHOP

del:删除

-net

route del -net 10.0.0.0/8

route del -net 0.0.0.0

route del default

所做的改动重启网络服务或主机后失效


查看:

route -n:以数字方式显示各主机或端口等相关信息


网络配置文件

/etc/sysconfig/network


网络接口配置文件:

/etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME

DEVICE=:关联的设备名称,要与文件名的后半部分”INTERFACE_NAME“保持一致

BOOTPROTO={static|none|dhcp|bootp}:引导协议

使用静态地址:static或none

dhcp:表示使用dhcp服务器获取地址

IPADDR=:IP地址

NETMASK=:指定子网掩码

GATEWAY=:设定默认网关

ONBOOT=:开机是否自动激活此网络接口

HWADDR=:硬件地址,要与硬件中的地址保持一致,可省略

USERCTL={yes|no}:是否允许普通用户此接口

PEERDNS={yes|no}:是否在BOOTPROTO为dhcp时接收由DHCP服务器指定的DNS地址


不会立即生效,大水牛重启网络服务或主机不会失效


路由:

/etc/sysconfig/network-scripts/route-ethX

在/etc/sysconfig/network-scripts/创建route-ethX文件添加内容:

添加格式一:

DEST via NEXTHOP

添加格式二:

ADDRESS0=

NETMASK0=

GATEWAY0=


DNS服务器指定方法只有一种:

/etc/resolv.conf

nameserver DNS_IP_1

nameserver DNS_IP_2


指定本地解析:

/etc/hosts(可以理解为dns服务器的缓存)

主机IP 主机名 主机别名(可省略)

172.16.0.1 www.baidu.com www


配置主机名:

hostname HOSTNAME

立即生效,但不是永久有效


永久:(下次重启才有效)

/etc/sysconfig/network

HOSTNAME=


ifconfig:老旧的命令


iproute2

ip

link:网络接口属性

addr:协议地址

route:路由

link:

show

ip -s link show

set 

ip link set DEV {up|down}

addr:

add

ip addr add DEV 

一块网卡可以使用多个地址:

网络设备可以别名:

eth0:

ethX:X ,eth0:0,eth0:1...

配置方法:

ifconfig ethX:X IP/NETMASK

/etc/sysconfig/network-scripts/ifcfg-ethX:X

非主要地址不能使用DHCP动态获取


LINUX:网络属于内核


-----bash脚本编程之九 while循环

写一个脚本,完成以下功能:

说明:此脚本能于同一个repo文件中创建多个Yum源的指向;

1、接受一个文件名做为参数,此文件存放至/etc/yum.repos.d目录中,且文件名以.repo为后缀;要求,此文件不能事先存,否则,报错;

2、在脚本中,提醒用户输入repo id;如果为quit,则退出脚本;否则,继续完成下面的步骤;

3、repo name以及baseurl的路径,而后以repo文件的格式将其保存至指定的文件中;

4、enabled默认为1,而gpgcheck默认设定为0;

5、此脚本会循环执行多次,除非用户为repo id指定为quit;


if [ -e $1 ]; then

  echo "$1 exist."

  exit 5

fi


[repo id]

name=

baseurl=

enabled=

gpgcheck=


while,until,for

break:提前退出循环

continue:


while的特殊用法一:

hwile :; do


done


while的特殊用方法二:

while read LINE; do

done < /path/to/somefile


判断/etc/passwd中哪个用户的shell为bash,是的话则显示出来(只显示前6个):

如果用户的ID小于505,不做任何处理(包括显示)

  1 #!/bin/bash

  2 #

  3 FILE=/etc/passwd

  4 let I=0

  5 

  6 while read LINE; do

  7  [ `echo $LINE | awk -F : '{print $3}'` -le 505 ] && continue

  8  [ `echo $LINE | awk -F : '{print $7}'` == '/bin/bash' ] && echo $LINE | awk -F : '{print $1}' && let I++

  9  [ $I -eq 6 ] && break

 10 done < $FILE

写一个脚本:

1、判断一个指定的bash脚本是否有语法错误,如果有错误,则提醒用户输入Q或者q无视错误退出,其他任何键可以通过vim打开这个bash脚本

2、如果用户通过vim打开编辑后保存退出时任然有错误,则重复第1步动作,否则,就正常关闭退出

demo.sh a.sh(被测试)

until bash -n $1 &> /dev/null; do

read -p "Syntax error, [Qq] to quit, others for editing: "  CHOICE

case $CHOICE in

q|Q)

   echo "Something wrong, quiting."

   exit 5

   ;;

*)

vim + $1

;;

esac

done


echo "0K"


你可能感兴趣的:(status,NetWork,十进制,网络服务)