[实践OK]谈谈网络的基础,谈谈子网划分-Jackxiang,到底是C网还是啥网子网掩码很重要,不能光看主机IP得到准确的判断~
Unix/LinuxC技术 jackxiang 2012-7-24 22:58
个人的闲暇笔记,有误还请指正,主要是谈网络的基础以及网络组成及网络的划分组网等碎片化的东东:
1.网络的组成:
1)工作站
2)服务器
3)外围设备
4)网络协议
上面的有些东东一直没有变,有些东东变得快,如:服务器变化快,网络协议一直是Tcp/Ip,从IpV4,到IpV6,中间有一个Ipv5,是Ipv4的增强版,现在国家在推Ip6,在现目前的Ip4里跑得最多的是视频这类东东基本上满了,在IpV6里跑的还是这一类东东,教育网什么的,还是以视频为主,但要想大家都用Ipv6还得增强应用的接入才行。
对等网:角色一样,如:大学宿舍(你的硬盘大片多,共享),是一个对等关系。
服务器/工作站:(打印服务器)
局域网/城域网/广域网
根据全国区域,规范各大城市的:
DC:深圳DC/西安DC/天津DC/上海DC
DC主要用来放重要数据
这些AC直接和周边的DC关联起来:
AC:沈阳AC/北京AC/济南AC/南京AC/杭州AC/汕头AC/东莞AC/成都AC/武汉AC
AC主要用来做游戏程序代码的部署
外围:CDN
用来做传文件加速之用
网络传输是看小b:
文件是大B:
如一个1G的文件在一个1G/s带宽里传,则需要8秒,因为:1B=8b,是一个8倍的关系,
如你家宽带是1M,往往下载只有128kb/s,这个1M是指网络上的1M,是小b,而大B要除以8。
对于公司网络的布局:
运营商 公网 管理网(排查服务器故障) 公网<-内网->其他IDC。
最复杂莫过于内网,及其复杂,也不安全,在办工网里和运营的网这一条路是最危险的,险象环生,因为有hack啊,心怀不诡的各种目的的人出现在这条道上,木马什么的,为此,需要一个隔离区来保证安全,而光密码验证也无法满足安全,得有专业的ToKen,说白了就是按什么AES加密后生成一个6位的码,自己有一个前缀在配置后和这6位一块用,这样再牛B的黑客也没有用,3分钟变一次密码快吧?当然也不能说是最安全,最不安全的是人啊,能搞定人,再安全也不安全,什么社会工程学呀,什么的,但不管怎么说这个Token卡是一个较大互联网公司的基石,没有它,还真是得找一个其他类似的办法替代才行。
对于OSI参考模型的探讨,它是一个标准,分层后让各自干各自的事情,如网线生产商,如交换机生产商,你生产的网线在任何交换机上都能用。
网关:类似于QQ发出来的信息,通过应用让MSN发出去一样。
对于电源:
有1+1的电源,1个电源是好的就成。
2+1的电源:有两个电源是好的就成。
1+1+1电源:只要有一个是好的就可以让服务器工作。
现在技术的发展,尤其是视频业的需求,万兆光模块都不是难事。
对于无线的事情:
普通的54M,现在新的802.11n。300M也有了。
对于光纤:
有单模光纤:就是走一种波长的激光,这样传输距离远,失误低,能传几十公里。
多模光纤:就是发出白光,也就是有多个波长的光在里面走,因这个光的方向性(光是有位象的)不一致,不像激光,传输距离近,容易误码。300M左右。
对于路由器:
NVRAM NVRAM ROM Flash CPU 没有用机械硬盘,所以,能长时间开机运行。
这里讲到了为何要划分成子网,子网和路由的关系,子网的算法,我在此找了一个子网的软件供计算,在百度百科里找了一篇文章:
这儿写下看书听讲的心得:
斜杠的含义,如:
如138.96.0.0/16表示B类网络138.96.0.0的子网掩码为255.255.0.0。表示两个8位,也就是255.255,一共16位的子网含义。
阅读全文
1.网络的组成:
1)工作站
2)服务器
3)外围设备
4)网络协议
上面的有些东东一直没有变,有些东东变得快,如:服务器变化快,网络协议一直是Tcp/Ip,从IpV4,到IpV6,中间有一个Ipv5,是Ipv4的增强版,现在国家在推Ip6,在现目前的Ip4里跑得最多的是视频这类东东基本上满了,在IpV6里跑的还是这一类东东,教育网什么的,还是以视频为主,但要想大家都用Ipv6还得增强应用的接入才行。
对等网:角色一样,如:大学宿舍(你的硬盘大片多,共享),是一个对等关系。
服务器/工作站:(打印服务器)
局域网/城域网/广域网
根据全国区域,规范各大城市的:
DC:深圳DC/西安DC/天津DC/上海DC
DC主要用来放重要数据
这些AC直接和周边的DC关联起来:
AC:沈阳AC/北京AC/济南AC/南京AC/杭州AC/汕头AC/东莞AC/成都AC/武汉AC
AC主要用来做游戏程序代码的部署
外围:CDN
用来做传文件加速之用
网络传输是看小b:
文件是大B:
如一个1G的文件在一个1G/s带宽里传,则需要8秒,因为:1B=8b,是一个8倍的关系,
如你家宽带是1M,往往下载只有128kb/s,这个1M是指网络上的1M,是小b,而大B要除以8。
对于公司网络的布局:
运营商 公网 管理网(排查服务器故障) 公网<-内网->其他IDC。
最复杂莫过于内网,及其复杂,也不安全,在办工网里和运营的网这一条路是最危险的,险象环生,因为有hack啊,心怀不诡的各种目的的人出现在这条道上,木马什么的,为此,需要一个隔离区来保证安全,而光密码验证也无法满足安全,得有专业的ToKen,说白了就是按什么AES加密后生成一个6位的码,自己有一个前缀在配置后和这6位一块用,这样再牛B的黑客也没有用,3分钟变一次密码快吧?当然也不能说是最安全,最不安全的是人啊,能搞定人,再安全也不安全,什么社会工程学呀,什么的,但不管怎么说这个Token卡是一个较大互联网公司的基石,没有它,还真是得找一个其他类似的办法替代才行。
对于OSI参考模型的探讨,它是一个标准,分层后让各自干各自的事情,如网线生产商,如交换机生产商,你生产的网线在任何交换机上都能用。
网关:类似于QQ发出来的信息,通过应用让MSN发出去一样。
对于电源:
有1+1的电源,1个电源是好的就成。
2+1的电源:有两个电源是好的就成。
1+1+1电源:只要有一个是好的就可以让服务器工作。
现在技术的发展,尤其是视频业的需求,万兆光模块都不是难事。
对于无线的事情:
普通的54M,现在新的802.11n。300M也有了。
对于光纤:
有单模光纤:就是走一种波长的激光,这样传输距离远,失误低,能传几十公里。
多模光纤:就是发出白光,也就是有多个波长的光在里面走,因这个光的方向性(光是有位象的)不一致,不像激光,传输距离近,容易误码。300M左右。
对于路由器:
NVRAM NVRAM ROM Flash CPU 没有用机械硬盘,所以,能长时间开机运行。
这里讲到了为何要划分成子网,子网和路由的关系,子网的算法,我在此找了一个子网的软件供计算,在百度百科里找了一篇文章:
这儿写下看书听讲的心得:
斜杠的含义,如:
如138.96.0.0/16表示B类网络138.96.0.0的子网掩码为255.255.0.0。表示两个8位,也就是255.255,一共16位的子网含义。
阅读全文
http://www.cnblogs.com/chengmo/archive/2010/09/30/1839632.html
1)shell 分割字符串存至数组
上述代码会输出
one
two
three
four
arr=($a)用于将字符串$a分割到数组$arr ${arr[0]} ${arr[1]} ... 分别存储分割后的数组第1 2 ... 项 ,${arr[@]}存储整个数组。变量$IFS存储着分隔符,这里我们将其设为分号 "," OLD_IFS用于备份默认的分隔符,使用完后将之恢复默认。
2)shell查找某个字符串是否存在的方法:
存在ok值为1,不存在则为0.
${desturlLoopPath}
Shell获取字符串的MD5:
echo -n 'hello'|md5sum|cut -d ' ' -f1
命令解释:
md5sum: 显示或检查 MD5(128-bit) 校验和,若没有文件选项,或者文件处为"-",则从标准输入读取。
echo -n : 不打印换行符。
cut: cut用来从标准输入或文本文件中剪切列或域。剪切文本可以将之粘贴到一个文本文件。
-d 指定与空格和tab键不同的域分隔符。-f1 表示第一个域。参考这里。
1)shell 分割字符串存至数组
上述代码会输出
one
two
three
four
arr=($a)用于将字符串$a分割到数组$arr ${arr[0]} ${arr[1]} ... 分别存储分割后的数组第1 2 ... 项 ,${arr[@]}存储整个数组。变量$IFS存储着分隔符,这里我们将其设为分号 "," OLD_IFS用于备份默认的分隔符,使用完后将之恢复默认。
2)shell查找某个字符串是否存在的方法:
存在ok值为1,不存在则为0.
${desturlLoopPath}
Shell获取字符串的MD5:
echo -n 'hello'|md5sum|cut -d ' ' -f1
命令解释:
md5sum: 显示或检查 MD5(128-bit) 校验和,若没有文件选项,或者文件处为"-",则从标准输入读取。
echo -n : 不打印换行符。
cut: cut用来从标准输入或文本文件中剪切列或域。剪切文本可以将之粘贴到一个文本文件。
-d 指定与空格和tab键不同的域分隔符。-f1 表示第一个域。参考这里。
if [ $? -ne 0 ];then 是什么意思
Php/Js/Shell/Go jackxiang 2012-7-24 19:35
这是unix的shell编程语句,意思是如果上一条命令执行后的结束代码不是0则执行下面的命令,知道fi行之前,例子:
[实践Ok]html下拉单选变多选通过Jquery修改由单选变为多选的属性的方案。及jquery 如何修改<a>标签的内容,及根据值判断select控件是否disabled。
Php/Js/Shell/Go jackxiang 2012-7-23 11:06
(一)
需要修改的属性:
multiple="multiple" height:auto;
修改后如下:
<select style="height:auto;width:260px;" id="sel-install-path" multiple="multiple" >
一:
<select name="select" size="1" multiple="multiple" id="select">
我想给一个常规的select加上: multiple="multiple" Jquery怎么加?
二:
那个height呢?
<select style="height:auto;width:260px;" id="sel-install-path" multiple="multiple" >
开始是一个固定高度,我想修改为auto,怎么弄?
"height:auto;
<select style="height:auto;width:260px;" id="sel-install-path" multiple="multiple" >
方法:
如果想删除这个多选的属性:
如何获取这个多选是不是真的多选?
判断时的Js:
multiple换成disabled:
对这个多选的Js的Jquery的操作示例:
返回:
[ "/tmp/projectOne", "/tmp/projectTwo"]
(二)jquery 如何修改<a>标签的内容
<a href="javascript:void(0);" onClick="mutiPathBuShuChoose();" id="mutiPathBuShuChooseHref">多目标</a>
$("a#mutiPathBuShuChooseHref").html("单目标");
整体示例:
需要修改的属性:
multiple="multiple" height:auto;
修改后如下:
<select style="height:auto;width:260px;" id="sel-install-path" multiple="multiple" >
一:
<select name="select" size="1" multiple="multiple" id="select">
我想给一个常规的select加上: multiple="multiple" Jquery怎么加?
二:
那个height呢?
<select style="height:auto;width:260px;" id="sel-install-path" multiple="multiple" >
开始是一个固定高度,我想修改为auto,怎么弄?
"height:auto;
<select style="height:auto;width:260px;" id="sel-install-path" multiple="multiple" >
方法:
如果想删除这个多选的属性:
如何获取这个多选是不是真的多选?
判断时的Js:
multiple换成disabled:
对这个多选的Js的Jquery的操作示例:
返回:
[ "/tmp/projectOne", "/tmp/projectTwo"]
(二)jquery 如何修改<a>标签的内容
<a href="javascript:void(0);" onClick="mutiPathBuShuChoose();" id="mutiPathBuShuChooseHref">多目标</a>
$("a#mutiPathBuShuChooseHref").html("单目标");
整体示例:
https://github.com/man-pages-zh/manpages-zh:
yum install man-pages-zh-CN
首先要:yum install man ,因为用的是centos6.3的最小安装,没有,否则后面配置都无效果。
http://code.google.com/p/manpages-zh/downloads/list
man 1是shell命令,man 2是系统调用,man 3是库函数
GNU GCC 提供了一份关于 MAN 格式的 C++ 标准库的文档,可以在其镜像点
ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/
ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/libstdc++-man.4.4.0.tar.bz2
找一个最新日期的下载。展开包之后将 man/man3 中的所有文件拷贝到系统上已经存在的一个 man/man3( cp man3/* /usr/share/man/man3/.)(cp -Rf man3/* /usr/local/zhman/share/man/zh_CN/man3/) 目录中即可使用。
在/usr/share/man/manX/
其中‘X’代表的是数字,也就是MAN的类别。
1)对于找不到的命令,man会报错:
[jing@CentOS locale]$ man abc
Cannot open the message catalog "man" for locale "zh_CN.UTF-8"
(NLSPATH="/usr/share/locale/%l/LC_MESSAGES/%N")
实践Ok:http://www.jackxiang.com/post/5711/
解决URL:http://www.2cto.com/os/201111/111711.html
[实践OK]将en下的man复制过来,先凑合用用:
cp /usr/share/locale/en/LC_MESSAGES/man /usr/share/locale/zh/LC_MESSAGES/
http://www.jackxiang.com/post/5711/
GNU GCC 提供了一份关于 MAN 格式的 C++ 标准库的文档,可以在其镜像点(http://gcc.gnu.org/mirrors.html)中下载。具体的路径是:ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/libstdc++-man.4.4.0.tar.bz2,可找一个最新日期的下载。展开包之后将 man/man3 中的所有文件拷贝到系统上已经存在的一个 man/man3 (/usr/share/man/man3/.)目录中即可使用,我的位置是:/man/libstdc++-man-4.4.0/man3# cp * /usr/share/man/man3/.。
可首先 man C++Intro 阅读 Introduction to the GNU libstdc++-v3 man pages。
对于 cout,你需要知道它是 std::ostream 类的一个对象,所以应该 man std::ostream。
摘自
http://bbs.chinaunix.net/thread-869423-1-1.html
阅读全文
yum install man-pages-zh-CN
首先要:yum install man ,因为用的是centos6.3的最小安装,没有,否则后面配置都无效果。
http://code.google.com/p/manpages-zh/downloads/list
man 1是shell命令,man 2是系统调用,man 3是库函数
GNU GCC 提供了一份关于 MAN 格式的 C++ 标准库的文档,可以在其镜像点
ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/
ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/libstdc++-man.4.4.0.tar.bz2
找一个最新日期的下载。展开包之后将 man/man3 中的所有文件拷贝到系统上已经存在的一个 man/man3( cp man3/* /usr/share/man/man3/.)(cp -Rf man3/* /usr/local/zhman/share/man/zh_CN/man3/) 目录中即可使用。
在/usr/share/man/manX/
其中‘X’代表的是数字,也就是MAN的类别。
1)对于找不到的命令,man会报错:
[jing@CentOS locale]$ man abc
Cannot open the message catalog "man" for locale "zh_CN.UTF-8"
(NLSPATH="/usr/share/locale/%l/LC_MESSAGES/%N")
实践Ok:http://www.jackxiang.com/post/5711/
解决URL:http://www.2cto.com/os/201111/111711.html
[实践OK]将en下的man复制过来,先凑合用用:
cp /usr/share/locale/en/LC_MESSAGES/man /usr/share/locale/zh/LC_MESSAGES/
http://www.jackxiang.com/post/5711/
GNU GCC 提供了一份关于 MAN 格式的 C++ 标准库的文档,可以在其镜像点(http://gcc.gnu.org/mirrors.html)中下载。具体的路径是:ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/libstdc++-man.4.4.0.tar.bz2,可找一个最新日期的下载。展开包之后将 man/man3 中的所有文件拷贝到系统上已经存在的一个 man/man3 (/usr/share/man/man3/.)目录中即可使用,我的位置是:/man/libstdc++-man-4.4.0/man3# cp * /usr/share/man/man3/.。
可首先 man C++Intro 阅读 Introduction to the GNU libstdc++-v3 man pages。
对于 cout,你需要知道它是 std::ostream 类的一个对象,所以应该 man std::ostream。
摘自
http://bbs.chinaunix.net/thread-869423-1-1.html
阅读全文
今天在FreeBSD上调试代码时,突然我的jar出现了这个错误!上网找了好多资料没有找到解决的办法,后来问同事才解决 了这个问题!(*^__^*) 嘻嘻……
问题:E513: write error, conversion failed (make 'fenc' empty to override)"
原因:新建的文件编码有问题。
解决办法:
先查看一下当前的编码:
:set fenc?
如果不是utf-8的编码格式,用下面的命令改成utf-8的格式
:set fileencoding=utf-8
就可以解决了!我的问题是这样解决的!仅供参考!
阅读全文
问题:E513: write error, conversion failed (make 'fenc' empty to override)"
原因:新建的文件编码有问题。
解决办法:
先查看一下当前的编码:
:set fenc?
如果不是utf-8的编码格式,用下面的命令改成utf-8的格式
:set fileencoding=utf-8
就可以解决了!我的问题是这样解决的!仅供参考!
阅读全文
用JavaScript获取ckeditor的内容
Php/Js/Shell/Go jackxiang 2012-7-19 17:07
Html:
editor是全局:
editor是全局: