转载:Linux命令行修改IP、网关、DNS的方法 http://www.cnblogs.com/dapeng111/archive/2012/12/25/2832836.html
方式一:
临时修改ip命令: #修改网卡eth0 IP修改为102.168.0.1,子网掩码修改为255.255.255.0 ifconfig eth0 102.168.0.1 netmask 255.255.255.0 #网关修改为102.168.0.254 route add default gw 102.168.0.254 #Linux命令行修改dns echo "nameserver 202.202.202.20 ">> /etc/resolv.conf #说明:该种方式可以使改变即时生效,重启后会恢复为原来的IP方式二:
永久修改ip命令: #修改ifcfg-eth0配置文件,该方式要重启后生效,且是永久的 vi /etc/sysconfig/network-scripts/ifcfg-eth0 #例子:由原来的DHCP改固定IP vi /etc/sysconfig/network-scripts/ifcfg-eth0 #修改配置文件(如下): #修改前: TYPE=Ethernet BOOTPROTO=dhcp DEFROUTE=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no NAME=ech0 UUID=f22c640a-88a2-40e3-82e4-e73de7067c61 ONBOOT=yes HWADDR=00:50:56:21:20:7B PEERDNS=yes PEERROUTES=yes LAST_CONNECT=1514912579 #修改后: TYPE=Ethernet BOOTPROTO=static IPV4_FAILURE_FATAL=yes IPV6INIT=no NAME=ech0 UUID=f22c640a-88a2-40e3-82e4-e73de7067c61 ONBOOT=yes HWADDR=00:50:56:21:20:7B IPADDR=192.168.2.110 NETMASK=255.255.255.0 GATEWAY=192.168.2.2 #修改网关 vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=localhost.localdomain GATEWAY=192.168.2.2 #修改dns域名解析: vi /etc/resolv.conf nameserver 192.168.2.2 #重启网卡: service network restart----------------------- Linux下修改网卡IP和网关
建议通过终端字符方式下来修改 一修改IP地址 vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 BOOTPROTO=none BROADCAST=192.168.1.255 IPADDR=192.168.1.33 NETMASK=255.255.255.0 NETWORK=192.168.1.0 ONBOOT=yes USERCTL=no PEERDNS=no TYPE=Ethernet ~
vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1 ONBOOT=yes BOOTPROTO=none IPADDR=192.168.2.34 NETMASK=255.255.255.0 USERCTL=no PEERDNS=no TYPE=Ethernet NETWORK=192.168.2.0 BROADCAST=192.168.2.255
三重新启动网络配置 /etc/init.d/network restart
修改配置文件
/etc/sysconfig/network-scripts/ 下有配置文件
比如文件:ifcfg-eth0 代表是以太网实际网卡0的配置文件
比如文件:ifcfg-eth0:1 代表是以太网实际网卡0的配置文件
域名服务器配置文件:/etc/ resolv.conf
修改ip地址 即时生效: # ifconfig eth0 192.168.0.20 netmask 255.255.255.0 启动生效: 修改/etc/sysconfig/network-scripts/ifcfg-eth0
修改default gateway 即时生效: # route add default gw 192.168.0.254 启动生效: 修改/etc/sysconfig/network-scripts/ifcfg-eth0
修改dns 修改/etc/resolv.conf 修改后可即时生效,启动同样有效
修改host name 即时生效: # hostname fc2 启动生效: 修改/etc/sysconfig/network
# Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ DEVICE=eth0 接口名称 BOOTPROTO=none 静态配置,若该值为“dhcp”则为动态获得,另外 static也是表示静态ip地址 BROADCAST=192.168.10.255 广播地址,通过IP地址和子网掩码自动计算得到 HWADDR=00:13:D3:27:9F:80 IPADDR=192.168.10.238 IPV6INIT=yes IPV6_AUTOCONF=yes NETMASK=255.255.255.0 NETWORK=192.168.10.0 指定网络,通过IP地址和子网掩码自动计算得到 ONBOOT=yes 开机时自动加载 GATEWAY=192.168.10.1 TYPE=Ethernet PEERDNS=yes USERCTL=no
ifdown eth0 关闭网络 ifconfig eth0 down 关闭网络
ifup eth0 开启网络 ifconfig eth0 up 开启网络
设置dns /etc/resolv.conf
nameserver 61.144.56.101 nameserver 202.96.128.166
[yeger@yeger ~]$ cat /etc/resolv.conf # Generated by NetworkManager nameserver 202.96.128.86 nameserver 202.96.128.166
其他方面 service network start //启动网络服务 service network stop //停止网络服务 service network restart //重启网络服务 service network status //查看网络服务状态
ifconfig eth0 192.168.10.222 netmask 255.255.255.0 //临时修改接口IP地址(无需重启接口)
[yeger@yeger ~] sudoifconfigwlan0192.168.21.199netmask255.255.255.0[yeger@yeger ] ifconfig wlan0 wlan0 Link encap:Ethernet HWaddr 00:02:72:77:BB:D1 inet addr:192.168.21.199 Bcast:192.168.21.255 Mask:255.255.255.0 inet6 addr: fe80::202:72ff:fe77:bbd1/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:3246 errors:0 dropped:0 overruns:0 frame:0 TX packets:1947 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:4514869 (4.3 MiB) TX bytes:177732 (173.5 KiB) wlan0 表示第一块无线以太网卡 Link encap 表示该网卡位于OSI物理层(Physical Layer)的名称 HWaddr 表示网卡的MAC地址(Hardware Address) inet addr 表示该网卡在TCP/IP网络中的IP地址 Bcast 表示广播地址(Broad Address) Mask 表示子网掩码(Subnet Mask) MTU 表示最大传送单元,不同局域网 MTU值不一定相同,对以太网来说,MTU的默认设置是1500个字节 Metric 表示度量值,通常用于计算路由成本 RX 表示接收的数据包 TX 表示发送的数据包 collisions 表示数据包冲突的次数 txqueuelen 表示传送列队(Transfer Queue)长度 interrupt 表示该网卡的IRQ中断号 Base address 表示I/O地址
配置虚拟网卡IP地址:网卡需要拥有多个IP地址
命令格式: ifconfig 网卡名:虚拟网卡ID IP地址 netmask 子网掩码
[yeger@yeger ~]$ sudo ifconfig wlan0:1 192.168.21.188 netmask 255.255.255.0
更改网卡MAC地址
ifconfig 网卡名 hw ether MAC地址
[yeger@yeger ~]$ ifconfig wlan0 hw ether 00:11:22:33:44:55
SIOCSIFHWADDR: 不允许的操作 [yeger@yeger ~] sudoifconfigwlan0hwether00:11:22:33:44:55SIOCSIFHWADDR:设备或资源忙[yeger@yeger ] ifconfig wlan0 down SIOCSIFFLAGS: 权限不够 [yeger@yeger ~] sudoifconfigwlan0down[yeger@yeger ] sudo ifconfig wlan0 hw ether 00:11:22:33:44:55 更改成功
[yeger@yeger ~]$ netstat -ant 查看端口信息 a 所有 n数字显示 t tcp协议 u udp协议 Active Internet connections (servers and established 已建立连接) Proto Recv-Q Send-Q Local Address Foreign Address State 协议 本地地址 远程地址 连接状态 类型 tcp 0 0 0.0.0.0:57798 0.0.0.0:* LISTEN listen表示监听状态 tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN tcp 0 0 :::111 :::* LISTEN tcp 0 0 :::22 :::* LISTEN tcp 0 0 ::1:631 :::* LISTEN
[yeger@yeger ~]$ netstat -r 查看路由表 Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 192.168.21.0 * 255.255.255.0 U 0 0 0 wlan0 192.168.122.0 * 255.255.255.0 U 0 0 0 virbr0 default 192.168.21.1 0.0.0.0 UG 0 0 0 wlan0
[yeger@yeger ~]$ netstat -i 查看网络接口状态
MTU字段:表示最大传输单元,即网络接口传输数据包的最大值。 Met字段:表示度量值,越小优先级越高。 RX-OK/TX-OK:分别表示接收、发送的数据包数量。 RX-ERR/TX-ERR:表示接收、发送的错误数据包数量。 RX-DRP/TX-DRP:表示丢弃的数量。 RX-OVR/TX-OVR:表示丢失数据包数量。
[yeger@yeger ~]$ nslookup www.baidu.com 测试域名解析 Server: 202.96.128.86 Address: 202.96.128.86#53
Non-authoritative answer: www.baidu.com canonical name = www.a.shifen.com. Name: www.a.shifen.com Address: 119.75.218.45 Name: www.a.shifen.com Address: 119.75.218.45
百度的IP地址是:119.75.218.45 分类: Linux 标签: linux, ip
注意: (1)弹出界面eth0: 错误:没有找到合适的设备:没有找到可用于链接’System eth0’的设备 http://blog.csdn.net/apollon_krj/article/details/56839291 (2)虚拟机可以设置静态ip,并能够正确ping通,网上有的说无法设置静态ip是错误的;