本篇记录如何给linux设置桥接网络配置 到达可以linux系统可以上网的目的。
现在我有一台虚拟的linux如下: (可参考hadoop基础虚拟机(二)---虚拟机安装以及安装linux系统)
启动登录后开始编辑网络配置文件
$vi /etc/sysconfig/network-scripts/ifcfg-eth0
需要改动的:
BOOTPROTO=static
#默认是自动获取dhcp,这里我们改成static静态
需要增加的:
IPADDR=192.168.30.85
#这个地址自己设置 因为我的windows系统是在30网段 所以 这里也用30网段,这里才能连通。
NETMASK=255.255.255.0
#网关最好也跟windows系统的保持一致
修改好之后保存退出。
使用root用户 重新启动网络配置
/etc/init.d/network restart
就可以上网了
linux中的网段最好与windows中本地的相同,即前三个数字相同。方便我们后面测试网络,一般常见的是 192.168.1.X 或者192.168.0.X
我们可以使用
curl 来测试访问网址链接 也可以用ping 的方式 测试是否能ping 通,能ping 通说明已经能上网了。
我分别 ping 百度以及windows系统。
ping www.baidu.com
ping 192.168.30.24
结果如下:
反过来 用windows系统的cmd界面 ping 192.168.30.85 (linux配置文件中设置的地址)
如果能ping通 则说明 可以正常上网了。
warning:changing a readonly file
'readonly' option is set (add ! to override)
Can’t open file writing
如图
解决方法:
使用joe用户帐号发现给不了权限 也不在sudo的执行分组中
所以先用
su -
切换到root用户
用root用户 chmod修改配置文件的权限为可写 我这里直接给最大的权限777
如图
shutting down interface eth0。
使用service network restart启动Linux网卡失败,提示shutting down interface eth0 Error this device is not active
这是网卡没有启动,遇到这个问题的解决办法是运行下面的命令行
ifup ifcfg-eth0service network start
这里可以看到网卡启动成功了
注意虚拟机需要把网络模式更改为桥接。
bringing up interface eth0:error :unknownconnection: 74f5e2a7-729b-41f2-9c18-93095106d493
出现这种情况我们直接打开eth0文件,找到UUID哪行,直接删除后保存,然后/etc/init.d/network restart重启网卡服务即可。
vi etc/sysconfig/network-scripts/ificfg-eth0
/etc/init.d/network restart
我们在拷贝虚拟机的时候,虚拟机里的网卡配置信息也会被复制过去,大家都知道网卡配置信息里有MAC地址,我们拷贝过去后MAC地址依然是之前电脑中的MAC地址,所以网卡就会出错。
通常情况下会报这个错误:
bringing up interface eth0:device eth0 doesnot seem to be present, delaying initialization
出现这个错误我们只需要重启下服务或者改一些参数就可以了。
1.打开etc/sysconfig/network-scripts/ificfg-eth0,确定ONBOOT应该为yes,
2.检查ificfg-eth0的MAC和ifconfig现实的MAC是否相符,并修改ificfg-eth0的MAC。
3.修改DEVICE为 与ifconfig中一致,如图应该 可以修改成 eth1。
4.重启服务,service NetworkManager restart ,service network restart.
5.然后/etc/init.d/network restart 系统会自动识别到网卡信息,就ok了。
我们这里使用windows用过telnet远程登录linux系统。
第一次使用不确定是否已经安装telnet可以使用 telnet 127.0.0.1 进行测试。
打开windows的telnet服务
(win7)打开控制面板->程序和功能->打开或关闭windows功能->勾选Telnet服务器和Telnet服务端->确定
现在打开cmd,输入telnet 127.0.0.1测试一下,如果不成功,可能是telnet服务并没有开启(默认未开启)。(有的系统telnet功能虽然已经打开了,但是telnet依然连接不上,提示:connect refuse或者在端口 23: 连接失败),也可能是这个原因,下面是开启的步骤。
(win7)打开控制面板->管理工具->服务->Telnet->右键属性改为 自动 ->然后在对着 telnet 右键 启动。
这时候再执行
telnet 127.0.0.1 成功后看到如下界面:
则windows端的 telnet 已可用。
$rpm -qa | grep telnet
未找到,则说明未安装。已安装则跳过安装步骤。
安装telnet及telnet-server,注意,需要root权限来安装。
$yum install telnet
$yum install telnet-server
等待一会会提示是否安装,输入y然后回车,一会就装好了。
因为装好telnet服务之后,默认是不开启服务的,下面我们需要修改文件来开启服务。
vi /etc/xinetd.d/telnet
修改 disable = yes 为 disable = no
service xinetd restart
修改/etc/sysconfig/iptables 文件,添加以下内容:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 23 -j ACCEPT
然后service iptables restart重启防火墙。搞定!
service iptables restart
这时候telnet 127.0.0.1,可以成功访问.
telnet 192.168.30.85
telnet 192.168.30.24
ctrl+] 然后在telnet 命令行输入 quit 就可以退出了