($width) AND $width .= 'px';
$style = " style=\"width: $width\"";
}
$value = $value ? $value : date('H:i');
$s = "";
return $s;
}
// form_date('start', '2018-07-05') 为空则当前日期
function form_date($name, $value = 0, $width = FALSE)
{
$style = '';
if (FALSE !== $width) {
is_numeric($width) AND $width .= 'px';
$style = " style=\"width: $width\"";
}
$value = $value ? $value : date('Y-m-d');
$s = "";
return $s;
}
/**用法
*
* echo form_radio_yes_no('radio1', 0);
* echo form_checkbox('aaa', array('无', '有'), 0);
*
* echo form_radio_yes_no('aaa', 0);
* echo form_radio('aaa', array('无', '有'), 0);
* echo form_radio('aaa', array('a'=>'aaa', 'b'=>'bbb', 'c'=>'ccc', ), 'b');
*
* echo form_select('aaa', array('a'=>'aaa', 'b'=>'bbb', 'c'=>'ccc', ), 'a');
*/
?>组保留的标签 余下为需要删除的标签
unset($oldtag[$key]);
}
}
}
if (!empty($oldtag)) {
$tagids = array();
foreach ($oldtag as $tagid => $tagname) {
$tagids[] = $tagid;
}
well_oldtag_delete($tagids, $tid);
}
$r = well_tag_process($tid, $fid, $create_tag, $tagarr);
return $r;
}
// 删除标签和绑定的主题
function well_oldtag_delete($tagids, $tid)
{
$pagesize = count($tagids);
$arrlist = well_tag_find_by_tagids($tagids, 1, $pagesize);
$delete_tagids = array(); // 删除
$tagids = array();
$n = 0;
foreach ($arrlist as $val) {
++$n;
if (1 == $val['count']) {
// 只有一个主题
$delete_tagids[] = $val['tagid'];
} else {
$tagids[] = $val['tagid'];
}
}
!empty($delete_tagids) and well_tag_delete($delete_tagids);
$arlist = well_tag_thread_find_by_tid($tid, 1, $n);
if ($arlist) {
$ids = array();
foreach ($arlist as $val) $ids[] = $val['id'];
well_tag_thread_delete($ids);
}
!empty($tagids) and well_tag_update($tagids, array('count-' => 1));
}
// 标签数据处理 $arr=新提交的数组 $tagarr=保留的旧标签
function well_tag_process($tid, $fid, $new_tags = array(), $tagarr = array())
{
if (empty($tid)) return '';
// 新标签处理入库
if ($new_tags) {
$threadarr = array();
$tagids = array();
$i = 0;
$size = 5;
$n = count($tagarr);
$n = $n > $size ? $size : $size - $n;
foreach ($new_tags as $name) {
++$i;
$name = trim($name);
$name = stripslashes($name);
$name = strip_tags($name);
$name = str_replace(array(' ', '#', "@", "$", "%", "^", '&', '·', '<', '>', ';', '`', '~', '!', '¥', '……', ';', '?', '?', '-', '—', '_', '=', '+', '.', '{', '}', '|', ':', ':', '、', '/', '。', '[', ']', '【', '】', '‘', ' ', ' ', ' ', ' ', ' '), '', $name);
$name = htmlspecialchars($name, ENT_QUOTES);
if ($name && $i <= $n) {
// 查询标签
$read = well_tag_read_name($name);
if ($read) {
// 存在 count+1
$tagids[] = $read['tagid'];
} else {
// 入库
$arr = array('name' => $name, 'count' => 1);
$tagid = well_tag_create($arr);
FALSE === $tagid and message(-1, lang('create_failed'));
$read = array('tagid' => $tagid, 'name' => $name);
}
$tag_thread = array('tagid' => $read['tagid'], 'tid' => $tid);
$threadarr[] = $tag_thread;
$tagarr[$read['tagid']] = $read['name'];
}
}
!empty($threadarr) and tag_thread_big_insert($threadarr);
!empty($tagids) and well_tag_update($tagids, array('count+' => 1));
}
$json = empty($tagarr) ? '' : xn_json_encode($tagarr);
return $json;
}
?>return $r;
}
/**
* @param int $page 页数
* @param int $pagesize 每页显示数量
* @return mixed
*/
function link_find($page = 1, $pagesize = 100)
{
$arr = link__find($cond = array(), array('rank' => -1), $page, $pagesize);
return $arr;
}
/**
* @param $id
* @return bool 返回FALSE失败 TRUE成功
*/
function link_delete($id)
{
if (empty($id)) return FALSE;
$r = link__delete(array('id' => $id));
link_delete_cache();
return $r;
}
//--------------------------kv + cache--------------------------
/**
* @return mixed 返回全部友情链接
*/
function link_get($page = 1, $pagesize = 100)
{
$g_link = website_get('friends_link');
if (empty($g_link)) {
$g_link = link_find($page, $pagesize);
$g_link AND website_set('friends_link', $g_link);
}
return $g_link;
}
// delete kv and cache
function link_delete_cache()
{
website_set('friends_link', '');
return TRUE;
}
?> $v = implode(",", $v);
$temp[] = $v;
}
// 去掉重复的字符串,也就是重复的一维数组
$temp = array_unique($temp);
// 再将拆开的数组重新组装
$output = array();
foreach ($temp as $k => $v) {
if ($stkeep) $k = $starr[$k];
if ($ndformat) {
$temparr = explode(",", $v);
foreach ($temparr as $ndkey => $ndval) $output[$k][$ndarr[$ndkey]] = $ndval;
} else $output[$k] = explode(",", $v);
}
return $output;
}
// 合并二维数组 如重复 值以第一个数组值为准
function array2_merge($array1, $array2, $key = '')
{
if (empty($array1) || empty($array2)) return NULL;
$arr = array();
foreach ($array1 as $k => $v) {
isset($v[$key]) ? $arr[$v[$key]] = array_merge($v, $array2[$k]) : $arr[] = array_merge($v, $array2[$k]);
}
return $arr;
}
/*
* 对二维数组排序 两个数组必须有一个相同的键值
* $array1 需要排序数组
* $array2 按照该数组key排序
* */
function array2_sort_key($array1, $array2, $key = '')
{
if (empty($array1) || empty($array2)) return NULL;
$arr = array();
foreach ($array2 as $k => $v) {
if (isset($v[$key]) && $v[$key] == $array1[$v[$key]][$key]) {
$arr[$v[$key]] = $array1[$v[$key]];
} else {
$arr[] = $v;
}
}
return $arr;
}
?>
园区网核心交换机与出口路由器如何配置才能通信?-软件玩家 - 软件改变生活!
能改的,叫做缺点,不能改的,叫做弱点。
文章目录
简单概述
了解路由器网关,比如路由器网关连接核心交换机设备的端口用的是接口还是子接口?如果路由器网关用的是接口连接核心交换机,那么核心交换机的接口需要配置为access端口类型;如果路由器网关用的是子接口连接核心交换机的话,那么核心交换机连接路由器网关的接口需要配置为trunk端口类型。路由器网关的接口是否配置了NAT?如果配置了NAT,ACL是否抓取相关的数据,需要放行相关的业务数据(锐捷ACL隐式默认拒绝,华为ACL默认为允许)?是否过滤的相关的路由?是否做了相关内网业务的回指路由?比如是有线无线业务的回指路由。
首先路由器需要配置基本的公网IP地址,公网口NAT的配置,写默认路由指向下一跳公网IP地址,或者是运行相关的路由协议。
其次路由器要和核心有一个互联IP地址,一般掩码为/30,核心上写一条默认路由指向出口路由器网关,出口路由器针对内网的网段写相关业务的回指路由,下一跳指向核心交换机连接网关路由器的IP地址。
拓扑
实验IP地址
实验IP地址如表所示:
| 设备 | 接口 | IP | 掩码 | 备注 |
|---|
| ISP | Loopback 0 | 114.114.114.114 | 32 | |
| G0/0/0 | 10.1.12.1 | 30 | |
| AR1 | G0/0/0 | 10.1.12.2 | 30 | |
| G0/0/1;G0/0/1.1 | 10.1.100.1 | 30 | |
| LSW1 | VLAN 100 | 10.1.100.2 | 30 | |
| VLAN 20 | 192.168.20.254 | 24 | VLAN 20的网关 |
| VLAN 10 | 192.168.10.254 | 24 | VLAN 10的网关 |
基本配置
AR1
路由器网关连接核心交换机设备的端口用的是接口,那么核心交换机的连接网关的接口需要配置为access端口类型。
<AR1>dis cu
sysname AR1
#
lldp enable
#
interface GigabitEthernet0/0/0
ip address 10.1.12.2 255.255.255.252
#
interface GigabitEthernet0/0/1
ip address 10.1.100.1 255.255.255.252
#
ip route-static 114.114.114.114 255.255.255.255 10.1.12.1
ip route-static 192.168.10.0 255.255.255.0 10.1.100.2
ip route-static 192.168.20.0 255.255.255.0 10.1.100.2
<LSW1>dis cu
#
sysname LSW1
#
vlan batch 10 20 100
#
lldp enable
#
dhcp enable
#
ip pool 10
gateway-list 192.168.10.254
network 192.168.10.0 mask 255.255.255.0
dns-list 114.114.114.114
#
ip pool 20
gateway-list 192.168.20.254
network 192.168.20.0 mask 255.255.255.0
dns-list 114.114.114.114
#
interface Vlanif1
#
interface Vlanif10
ip address 192.168.10.254 255.255.255.0
dhcp select global
#
interface Vlanif20
ip address 192.168.20.254 255.255.255.0
dhcp select global
#
interface Vlanif100
ip address 10.1.100.2 255.255.255.252
#
interface MEth0/0/1
#
interface GigabitEthernet0/0/1
port link-type access
port default vlan 100
#
interface GigabitEthernet0/0/2
port link-type trunk
port trunk allow-pass vlan 2 to 4094
#
interface GigabitEthernet0/0/3
port link-type trunk
port trunk allow-pass vlan 2 to 4094
#
ip route-static 0.0.0.0 0.0.0.0 10.1.100.1
LSW2
<LSW2>dis cu
#
sysname LSW2
#
vlan batch 20
#
lldp enable
#
dhcp enable
#
interface GigabitEthernet0/0/1
port link-type trunk
port trunk allow-pass vlan 2 to 4094
#
interface GigabitEthernet0/0/2
port link-type access
port default vlan 20
LSW3与LSW2配置类似
PC1自动获取IP地址
ipconfig
简单测试
PC1 PING测试114.114.114.114
由输出结果得知,部门A能访问公网
路由器网关连接核心交换机设备的端口用的是子接口,如果核心交换机的连接网关的接口需要配置为access端口类型,数据能否互通?
AR1
[AR1]int g0/0/1
[AR1-GigabitEthernet0/0/1]undo ip address
[AR1-GigabitEthernet0/0/0.1]quit
[AR1]interface GigabitEthernet 0/0/1.1
[AR1-GigabitEthernet0/0/1.1]ip address 10.1.100.1 255.255.255.252
[AR1-GigabitEthernet0/0/1.1]dot1q termination vid 100
[AR1-GigabitEthernet0/0/1.1]arp broadcast enable
AR1 PING测试 10.1.100.2
[AR1]ping 10.1.100.2
由输出结果得知,PING不通LSW1对端的IP
LSW1去PING测试AR1的GigabitEthernet0/0/1.1接口IP地址
[LSW1]ping 10.1.100.1
如果核心交换机的连接网关的接口需要配置为trunk端口类型,数据能否互通?
LSW1
[LSW1]interface GigabitEthernet 0/0/1
[LSW1-GigabitEthernet0/0/1]undo port default vlan
[LSW1-GigabitEthernet0/0/1]undo port link-type
[LSW1-GigabitEthernet0/0/1]port link-type trunk
[LSW1-GigabitEthernet0/0/1]port trunk allow-pass vlan 100
[LSW1-GigabitEthernet0/0/1]display this
LSW1再去PING测试AR1的GigabitEthernet0/0/1.1接口IP地址
[LSW1]ping 10.1.100.1
由输出结果得知,子接口的IP地址可达。
通过traffic-filter调用ACL,拒绝不让通行的业务访问公网(部门A)
[AR1]acl 2000
[AR1-acl-basic-2000]rule 5 deny source 192.168.20.0 0.0.0.255
[AR1-acl-basic-2000]rule 15 permit
[AR1-acl-basic-2000]int g0/0/0
[AR1-GigabitEthernet0/0/0]traffic-filter outbound acl 2000
PC1(A)
ping 114.114.114.114
由输出结果得知,部门A的业务不能访问公网
PC2(B)
ping 114.114.114.114
由输出结果得知,部门B的业务能访问公网
知识扩展:
门禁道闸的网络业务如何跑起来?
其实与监控业务相似,可直接使用默认VLAN 1进行数据传输;监控、监控存储、监控的服务器使用同网段IP地址,门禁类似。
交换机的SYS灯亮红色,红灯频繁闪动,这是什么原因?
红色的话一般硬件可能有问题,一般使用display fan/power/device命令查看设备是否有异常。
display fan
显示风扇有问题。
好了这期就到这里了,如果你喜欢这篇文章的话,请点赞评论分享收藏,如果你还能点击关注,那真的是对我最大的鼓励。谢谢大家,下期见!
本文标签:
园区路由器交换机核心通信
更多相关文章
路由器入门宝典:主流品牌登录地址大全与默认配置解密
生活中,最常见的路由器地址便是 192.168.0.1 和 192.168.1.1 而这些地址在用户首次进入的时候可以用用户名:admin 密码:admin 来登录路由器网址。 但是也不是所有的路由器进入都是这个IP和用
轻松获取岭博网关yungw1100:路由器默认用户名密码一览表
生活中,最常见的路由器地址便是 192.168.0.1 和 192.168.1.1 而这些地址在用户首次进入的时候可以用用户名:admin 密码:admin 来登录路由器网址。 但是也不是所有的路由器进入都是这个IP和用
Adobe Flash Player的最新版本解析及安装技巧
最近这几天被路由器桥接问题给搞晕了,问题没啥特别困难的地方,要是懂网络的肯定很快了解及解决。 路由器A型号:TP-LINK(TL-WAR1200L)路由器B型号:TP-LINK(普通)不同
只需几步:如何将你的无线路由器与网线连接,为电脑提供Wi-Fi接入
转自: 对于无线当有线路由器使用,就是如何在没有无线网卡的情况下,把无线路由器和电脑用LAN线连接的解析。很多情况下我们需要把无线路由器当有线路由器使用,就是如何在没有无线网卡的情况下,把无线路由器和电脑用LAN线连接。
快速上手!小米、TP-Link二阶路由器配置实录
基于小米和TPLINK路由器的二级路由器设置 由于卧室WIFI信号不好(关上门后,WIFI信号立即衰减),无法在卧室内进行上网、办公、娱乐。为了解决这个问题,上网百度了一下,看到了很多教程,但是严格按照教程操作,竟然无法连接二
成为WiFi信号放大师——华硕路由器AP模式轻松设置指南
华硕(ASUS)路由器AP模式设置教程 总结就是1.AP路由设置LANIP跟一级路由同一个网段,例如,一级的是192.168.1.1,AP:192.168.1.X。2.把一级路由的网关和DNS填上AP那里 问:
无压力配置!详解磊科无线路由器的简单步骤
一直以来磊科无线路由器的性能和质量都是很不错的,相信有不少的电脑用户都在使用磊科路由器,那么今天笔者就与大家一起分享磊科路由器的设置方法,以便于用户能够正确快速的运用磊科路由器。 首先我们需要对照设备接线的参考图来将磊科路由器
**区分角色:在局域网里的路由器 VS 交换机,谁更擅长哪件事?**
交换机,在京东上千兆交换机大概三四百块,百兆交换机只需要几十块,那么它们的区别在哪? 在了解它们的区别之前,我们需要先弄懂什么是交换机? 百度百科对交换机的解释是“交换机(Switch)意为“”是一种用于电(光)
手把手教你用TP-Link当无线交换机,提升家庭网络体验
使用场景 案例:1比如一个办公室里面有一台连接网线的打印机,或者是一台电脑的文件夹需要共享,办公室的网口就只有几个,而且网口出来的IP地址都是172开头的,你既想要路由器可以实现上网,又想连接打印机
从入门到精通:交换机与路由器的对比讲解
交换机和路由器都是网络设备,但它们在功能、工作层次、数据转发方式等多个方面存在区别 1. 功能 交换机主要功能是连接多个设备,实现这些设备之间的数据交换。它能够根据 MAC 地址(物理地址)来识
腾达&移动路由器联手:解锁WiFi无限延展的强大招数
场景 移动宽带附带的光猫有无线wifi功能,但是在其他房间这个信号太弱了,于是我想用一台路由器来接收光猫发出的wifi信号,并且路由器自身也发出wifi信号,这样在其他房间我就可以用到无线网络了。 登录移动路由器
路由器大揭秘:入门到精通的全面教程
简介:路由器说明书是用户正确安装和使用网络设备的关键指导文档,涵盖硬件连接、网络配置、无线设置及高级功能启用等全流程。本文深入解析路由器的基本构造与安装步骤,包括WANLAN接口连接、登录管理界面、设置SSID与安全密码、选择工作频
路由器不求人:全面解析硬件连接与高级功能
简介:路由器说明书是用户正确安装和使用网络设备的关键指导文档,涵盖硬件连接、网络配置、无线设置及高级功能启用等全流程。本文深入解析路由器的基本构造与安装步骤,包括WANLAN接口连接、登录管理界面、设置SSID与安全密码、选择工作频
Flash中心的双刃剑:核心模组与动态资源管理
1、核心: bootvmlinuz 或 bootvmlinuz-version;核心解压缩所需 RAM Disk: bootinitrd (bootinitrd-version);核心模组:
搞定TP Link TL-WR702N,轻松进入无线路由器后台设置
TL-WR702N是TP Link在很多年前发布的一个迷你型的便携路由器,最近要搬家,我从箱子底翻出了这个小乖乖,年代有些久远,当初的账户密码全都忘到了九霄云外,无奈之下reset重新设置,但是却遇到了无法进入后台的问题。 操
新手必读:详解设置路由器IP地址,让你的网络更流畅
IP地址是计算机网络中的关键元素,用于标识和定位设备和主机。在家庭或办公室网络中,路由器起到了连接内部设备和外部互联网的关键作用。为了使网络正常运行,需要正确设置路由器的IP地址。本文将介绍如何设置路由器的IP地址,以确保网络顺畅运
揭秘!两台SWF路由器联接方式全解析
一、前言 随着智能家居时代来临,家里的网络部署需求开始复杂起来。往往一个路由器已经不能满足需求或者不利于拓展。两个路由器连接最常见的情况是家中已有一个路由器,并且已经通过这个路由器来正常上网。现在是因某些原因想在不改变已
一键设置TP-Link WDS桥接,让你的路由器无缝连接!
随着无线网络的发展,现在越来越多的公司及企业都已经开始布局无线局域网,今天我们主要介绍下适合中小企业的无线路由器桥接或WDS功能。文章以TP-link WR841N无线路由器设置为例,其它路由器参考设置思路进行设置。
傻瓜式教程:TP-link WiFi路由器WDS设置指南,让你的网络无死角
随着无线网络的发展,现在越来越多的公司及企业都已经开始布局无线局域网,今天我们主要介绍下适合中小企业的无线路由器桥接或WDS功能。文章以TP-link WR841N无线路由器设置为例,其它路由器参考设置思路进行设置。
手机WiFi显示在线,但网页打不开?解决方法超简单!
我们经常会遇到手机显示已经连接了Wifi,而且还是满格信号,密码也正确,也没有不良标志,但就是不能上网,一般出现这种情况的话,有几个地方可能出现问题导致的,手机.路由器.网络。 一:手机 首先进入手机的“设置”——“无
发表评论