如果您只是需要临时改变一下IP地址,只要执行类似下面的命令即可

$ sudo ifconfig eth0 192.168.1.100 netmask 255.255.255.0

如果需要永久改变IP地址,那么就要修改配置文件了

$ sudo vi /etc/network/interfaces
auto eth0
address 192.168.1.123
netmask 255.255.255.0
gateway 192.168.1.1

修改配置文件后,还不能让配置生效。重启网络办法

$ sudo /etc/init.d/networking restart

当然也可以简单的重启网卡即可

$ sudo ifdown eth0
$ sudo ifup eth0
查看网卡的情况使用命令ifconfig

CentOS的yum源中没有git,只能自己编译安装

确保已安装了依赖的包

yum install curl
yum install curl-devel
yum install zlib-devel
yum install openssl-devel
yum install perl
yum install cpio
yum install expat-devel
yum install gettext-devel
下载最新的git包
wget http://www.codemonkey.org.uk/projects/git-snapshots/git/git-latest.tar.gz
tar xzvf git-latest.tar.gz
cd git-2013-01-29 #你的目录可能不是这个
autoconf
./configure
make
sudo make install
检查下安装的版本
# git --version
git version 1.8.1.GIT

场景:某个WEB服务器提供服务的端口为8080, 而常用的WEB服务端口为80,在不能修改服务器端口的情况下,增加80端口为对外服务端口。即访问主机的80端口,也能访问到8080端口的内容。

办法:将80端口的请求转发到8080端口。使用iptables的DNAT (Destination Network Address Translation)即实现端口转发。下面假设主机的IP地址为192.168.0.100。访问连接分为本地连接和外部连接,分开讲述区别。

1) 外部连接。指的是由其他的主机连接到本台主机的连接。网络连接的数据包在iptables 会首先经过 PREROUTING链, 所以我们在PREROUTING做DNAT即可。

#iptables -t nat -A PREROUTING -p tcp -i eth0 -d 192.168.0.100 --dport 80 
-j DNAT --to 192.168.0.100:8080

2)本地连接。常用的地址localhost或者127.0.0.1,或者本机的IP地址192.168.0.100,访问本机的内容时, 数据包不会经过iptables的PREROUTING链,所以在PREROUTING链做DNAT是无效的。本地连接的数据包不会通过网卡,而是由内核处理后直接发给本地进程。数据包在 iptables 中只经过 OUTPUT 链。

# iptables -t nat -A OUTPUT -p tcp -d 127.0.0.1 --dport 80 -j DNAT --to 127.0.0.1:8080
# iptables -t nat -A OUTPUT -p tcp -d 192.168.0.100 --dport 80 -j DNAT --to 127.0.0.1:8080

如果还没有实现端口转发,可能由于系统还没有打开转发的缘故。

# echo 1 > /proc/sys/net/ipv4/ip_forward

如果已经实现了端口转发,不妨将iptables配置保存起来,以后在系统重启的时候自动加载

# iptables-save > /etc/sysconfig/iptables

修改系统配置,默认打开数据转发

# vi /etc/sysctl.conf
net.ipv4.ip_forward = 1

这样在重启后,还可以继续拥有端口转发功能。

linux系统以iptables为防火墙。以CentOS为例,打开iptables的配置文件。

vi /etc/sysconfig/iptables

查看各个链表的配置信息

/etc/init.d/iptables status

1)iptalbes的配置文件默认路径为/etc/sysconfig/iptables。添加一行配置开放常用的WEB端口TCP80

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

2.关闭/开启/重启防火墙, stop/start/restart

/etc/init.d/iptables stop

3.永久性关闭防火墙

chkconfig --level 35 iptables off  
/etc/init.d/iptables stop

4.关闭主机的25端口, 禁止外部的SMTP发送,并且保存iptables配置

iptables -A INPUT -p tcp --dport 25 -j DROP 
iptables-save > /etc/sysconfig/iptables

注意:SSH常用的端口为TCP 22。如果关闭了SSH的连接端口,将可能无法管理服务器。

CentOS主机做路由,为子网实现共享上网。2个IP,一个公网IP(12.34.56.78),一个内外网关(192.168.0.254)。    首先打开路由转发,并且为了保证开机重启后生效。如下操作:

1:修改/etc/sycctl.conf,打开路由转发。

[[email protected] ~]# vi /etc/sysctl.conf
net.ipv4.ip_forward = 1

2:让路由转发立即生效

[[email protected] ~]# sysctl -p
net.ipv4.ip_forward = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 4294967295
kernel.shmall = 268435456

上面的设置只是打开了路由转发而已,要想实现NAT功能,还在iptables里面添加配置。

1) 往iptables的路由表POSTROUTING添加配置

[[email protected] ~]# iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE

2) 保存iptables记录到文件, 确保主机重启后仍然可以读取iptables记录

[[email protected] ~]# iptables-save > /etc/sysconfig/iptables

3) 设置iptables开机启动

[[email protected] ~]# chkconfig iptables on
[[email protected] ~]# chkconfig ——list iptables
iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off

将另外一台主机的网关设置为192.168.0.254看看怎么样。能上网了没