在学习linux网络编程过程中,socket套接字是基础,用socket进行网络通信,在编程过程中要求绑定端口号跟IP地址(address 两种选择:1,loop(127.0.0.1)2,eth0(192.168.1...,如果用的是loop就不用改了,不过想学习设置静态ip也可以接着往下看),大家应该都知道,在一个局域网内,路由器发出的ip地址是有限的,并且不固定(第一次192.168.1.111 , 下一次192.168.1.119都有可能),因此编写好的Server,client第一次可以执行,换一个地方或者下次就不能执行了,因此就需要设置静态IP。
第一步,打开终端,输入ifconfig命令;
第二步(root权限):修改网络配置文件
命令:vim /etc/sysconfig/network-scripts/ifcfg-eth0 回车
然后根据自己实际情况做修改,只改红色部分,保存
第三步,设置好配置文件后 ,此时你的ip还没有发生变化,需要重启网络服务
命令 :service network restart
第四步:检验静态ip是否设置成功
命令 :ifconfig
接下来你可以测试是否能链接上外网,
命令: ping www.baidu.com (不付图片了)
静态ip就算设置成功了,但是你会发现,过一段时间你的虚拟机链接不上百度了,
网络上的其他教程都是教你怎么去设置静态IP,并没有解决方案,接下来我来细细道来
你会发现,用ping自己ip时,能连接上。但是ping www.baidu.com 会没反应。
然后我来说下我的解决方案:
解决方案1:vim /etc/sysconfig/network-scripts/ifcfg-eth0
你设置的静态IP被人占用了,进去修改你设置的Ip,换一个;
解决方案2:
把BOOTPROTO 设置为“dhcp” 动态的 ,然后重启网络服务;
其余的就不用改了,因为是动态IP,设置这些都是没必要的;
ping www.baidu.com // ok
所以:如果你只是为了学习socket编程可以去设置静态IP,因为大多数都是装的虚拟机,windows都可以上网,
但是我个人建议不要去设置静态IP,因为IP资源是有限的,长期占用是一种浪费。我的讲解就到这里啦,第一次写博客,对Linux的理解还比较浅,所以请大家多多指教