RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / user-500779

Nigredo's questions

Martin Hope
Nigredo499
Asked: 2025-03-25 14:08:49 +0000 UTC

Mikrotik -> 华为 M-LAG:VLAN 迁移后,网络可用性仅限于一台交换机

  • 4

同事。

我正在解决将多个 VLAN 从 Mikrotik 传输到由两台华为 CE6863E 交换机组装并通过 M-LAG 联合起来的最近委托的核心的问题。

转移的目的:从 Mikrotik 中删除所有内部网络,以便它成为 PE。

网络图

我们决定从负责 VoIP 的 VLAN 203 开始​​。我遇到了一个问题:在我提升核心上的 VLAN 之后(之前已经在 Mikrotik 上禁用它),只能从 MSK-Core-1 ping 该网络的主机,而从 MSK-Core-2 无法 ping 任何主机,除了 int VLAN 203 本身的 IP - 该网络的网关。

MSK-Core-1 配置:

dfs-group 1
 priority 200
 source ip 10.197.255.254
 consistency-check enable mode loose

stp bridge-address 0001-0001-0001
stp mode rstp
stp v-stp enable
stp instance 0 root primary
stp tc-protection

arp direct-route enable

bridge-domain 1
 arp l2-proxy enable

interface Vlanif203
 description Vo-Ip
 ip address 10.197.203.254 255.255.255.0
 arp proxy enable
 arp proxy inter-vlan enable
 arp proxy intra-vlan enable
 mac-address 0000-5e00-0101
 dhcp server enable
 dhcp select relay
 dhcp relay binding server group ad-dhcp-srv
 dhcp relay source-interface Vlanif203

interface MEth0/0/0
 ip address 10.197.1.101 255.255.255.0
 arp detect mode unicast

interface Eth-Trunk0
 stp disable
 mode lacp-static
 peer-link 1
 port vlan exclude 1

interface 25GE1/0/1
 description Link-MikroTik-Sfp2
 port link-type trunk
 undo port trunk allow-pass vlan 1
 port trunk allow-pass vlan 2 to 499 501 to 4094
 device transceiver 10GBASE-FIBER
 port mode 10G

interface LoopBack0
 ip address 10.197.255.254 255.255.255.255

bgp 65197
 router-id 10.197.255.254
 private-4-byte-as enable
 peer 10.197.255.253 as-number 65197 # MSK-Core-2
 peer 10.197.255.253 connect-interface LoopBack0
 peer 10.197.255.253 capability-advertise graceful-restart
 peer 10.197.255.255 as-number 65197 # MikroTik
 peer 10.197.255.255 connect-interface LoopBack0
 peer 10.197.255.255 capability-advertise graceful-restart
 #
 ipv4-family unicast
  network 10.197.203.0 255.255.255.0
  network 10.197.255.254 255.255.255.255
  peer 10.197.255.253 enable
  peer 10.197.255.255 enable
  peer 10.197.255.255 preferred-value 50

ip route-static 0.0.0.0 0.0.0.0 10.197.255.255
ip route-static 10.197.255.253 255.255.255.255 10.197.1.102
ip route-static 10.197.255.255 255.255.255.255 10.197.1.254

MSK-Core-2 配置(与 MSK-Core-1 相同):

dfs-group 1
 priority 150
 source ip 10.197.255.253
 consistency-check enable mode loose

stp instance 0 root secondary

interface LoopBack0
 ip address 10.197.255.253 255.255.255.255

bgp 65197
 router-id 10.197.255.253
 private-4-byte-as enable
 peer 10.197.255.254 as-number 65197 # MSK-Core-1
 peer 10.197.255.254 connect-interface LoopBack0
 peer 10.197.255.254 capability-advertise graceful-restart
 peer 10.197.255.255 as-number 65197
 peer 10.197.255.255 connect-interface LoopBack0
 peer 10.197.255.255 capability-advertise graceful-restart
 #
 ipv4-family unicast
  network 10.197.203.0 255.255.255.0
  network 10.197.255.253 255.255.255.255
  peer 10.197.255.254 enable
  peer 10.197.255.255 enable
  peer 10.197.255.255 preferred-value 50

ip route-static 0.0.0.0 0.0.0.0 10.197.255.255
ip route-static 10.197.255.254 255.255.255.255 10.197.1.101
ip route-static 10.197.255.255 255.255.255.255 10.197.1.254

M-LAG:

<MSK-Core-1>display dfs-group 1 m-lag
*                : Local node
Heart beat state : OK
Node 1 *
  Dfs-Group ID   : 1
  Priority       : 200
  Address        : ip address 10.197.255.254
  State          : Master
  Causation      : -
  System ID      : e84d-7424-0b11
  SysName        : MSK-Core-1
  Version        : V200R022C00SPC500
  Device Type    : CE6863E
Node 2
  Dfs-Group ID   : 1
  Priority       : 150
  Address        : ip address 10.197.255.253
  State          : Backup
  Causation      : -
  System ID      : e8ea-4d4a-6af1
  SysName        : MSK-Core-2
  Version        : V200R022C00SPC500
  Device Type    : CE6863E

路由:

<MSK-Core-1>dis bgp routing-table
*> 10.197.203.0/24 0.0.0.0 0 0 i

<MSK-Core-2>dis bgp routing-table
*> 10.197.203.0/24 0.0.0.0 0 0 i

[~MSK-Core-1-Vlanif203]dis ip routing-table 10.197.203.0 
10.197.203.0/24 Direct 0 0 D 10.197.203.254 Vlanif203 

[~MSK-Core-2-Vlanif203]dis ip routing-table 10.197.203.0 
10.197.203.0/24 Direct 0 0 D 10.197.203.254 Vlainf203

地址解析协议(ARP):

[~MSK-Core-1]dis arp | i 10.197.203.  
10.197.203.254 0000-5e00-0101 I Vlanif203 
10.197.203.1 bc24-1166-e8bc 20 D/203 25GE1/0/40 
10.197.203.19 44db-d26b-e3b5 20 D/203 25GE1/0/2 

[~MSK-Core-2]dis arp | i 10.197.203.
# записей гораздо больше и все через Eth-Trunk0
10.197.203.254 0000-5e00-0101 I Vlanif203 
10.197.203.1 bc24-1166-e8bc 20 D/203 Eth-Trunk0 
10.197.203.19 44db-d26b-e3b5 20 D/203 Eth-Trunk0

平安:

[~MSK-Core-1]ping 10.197.203.1
Reply from 10.197.203.1: bytes=56 Sequence=1 ttl=64 time=1 ms

[~MSK-Core-2]ping 10.197.203.1
Request time out

我请求帮助解决这个问题。往哪边挖?我哪里设置错了?

mikrotik
  • 1 个回答
  • 36 Views
Martin Hope
Nigredo
Asked: 2022-07-17 19:10:45 +0000 UTC

解析支付订单 1C

  • 1

同事。

我需要解析从 1C 下载的支付订单,如下所示:

Документ=Платежное поручение
СекцияДокумент=Платежное поручение
Номер=1
Дата=16.05.2022
Сумма=888.88
ПлательщикСчет=03111111111111111111
Плательщик=ИНН 9777777777 ООО "Рога&Копыта"
ПлательщикИНН=9777777777
Плательщик1=ООО "Рога&Копыта"
ПлательщикРасчСчет=03111111111111111111
ПлательщикБанк1=УФК ПО Г. МОСКВЕ
ПлательщикБанк2=г. Москва
ПлательщикБИК=004444444
ПлательщикКорсчет=40101111111111111111
ПолучательСчет=40222222222222222222
Получатель=ИНН 000000000000 Иванов Иван Иванович
ПолучательИНН=000000000000
Получатель1=Иванов Иван Иванович
ПолучательРасчСчет=40222222222222222222
ПолучательБанк1=ПАО СБЕРБАНК
ПолучательБанк2=г. Москва
ПолучательБИК=044525225
ПолучательКорсчет=30101111111111111111
КодНазПлатежа=1
ВидОплаты=01
ПлательщикКПП=772222222
Очередность=3
КонецДокумента
СекцияДокумент=Платежное поручение
Номер=2
Дата=16.05.2022
Сумма=7777.77
ПлательщикСчет=03111111111111111111
Плательщик=ИНН 9777777777 ООО "Рога&Копыта"
ПлательщикИНН=9777777777
Плательщик1=ООО "Рога&Копыта"
ПлательщикРасчСчет=03111111111111111111
ПлательщикБанк1=УФК ПО Г. МОСКВЕ
ПлательщикБанк2=г. Москва
ПлательщикБИК=004444444
ПлательщикКорсчет=40101111111111111111
ПолучательСчет=40333333333333333333
Получатель=ИНН 000000000000 Петров Петр Петрович
ПолучательИНН=000000000000
Получатель1=Петров Петр Петрович
ПолучательРасчСчет=40333333333333333333
ПолучательБанк1=ПАО СБЕРБАНК
ПолучательБанк2=г. Москва
ПолучательБИК=044525225
ПолучательКорсчет=30102222222222222222
КодНазПлатежа=1
ВидОплаты=01
ПлательщикКПП=772222222
Очередность=3
КонецДокумента
КонецФайла

像这样实现解析:

def collect_pay_info(file) -> list:
    result = []
    with open(file, 'r', encoding='Windows-1251') as f:
        tmp = f.readline().strip()
        while 'КонецФайла' not in tmp:
            data = {'docNum': '',
                    'docDate': datetime.now().strftime('%Y-%m-%d'),
                    'paySum': '',
                    'sumNds': '0.00',
                    'recip_Name': '',
                    'recip_CheckAcc': '',
                    'recip_BIK': '',
                    'recip_BankName': '',
                    'recip_CorrAcc': ''}
            while 'КонецДокумента' not in tmp:
                if 'ПолучательСчет=' in tmp:
                    data['recip_CheckAcc'] = tmp.strip().split('=')[1]
                if 'Получатель1=' in tmp:
                    data['recip_Name'] = tmp.strip().split('=')[1]
                if 'ПолучательРасчСчет=' in tmp:
                    data['recip_CheckAcc'] = tmp.strip().split('=')[1]
                if 'ПолучательБанк' in tmp:
                    data['recip_BankName'] = tmp.strip().split('=')[1]
                if 'ПолучательБИК=' in tmp:
                    data['recip_BIK'] = tmp.strip().split('=')[1]
                if 'ПолучательКорсчет=' in tmp:
                    data['recip_CorrAcc'] = tmp.strip().split('=')[1]
                if 'Сумма=' in tmp:
                    data['paySum'] = tmp.strip().split('=')[1]
                tmp = f.readline().strip()
            result.append(data)
            tmp = f.readline().strip()
    return result

我知道可以更有效地实施,但是没有足够的经验。请告诉我如何改进我的代码。提前致谢。


非常感谢大家的帮助!结果:

from datetime import datetime


def collect_pay_info(file):
    translators = {
        'Дата': 'docDate',
        'ПолучательСчет': 'recip_CheckAcc',
        'Получатель1': 'recip_Name',
        'ПолучательРасчСчет': 'recip_CheckAcc',
        'ПолучательБанк1': 'recip_BankName',
        'ПолучательБИК': 'recip_BIK',
        'ПолучательКорсчет': 'recip_CorrAcc',
        'Сумма': 'paySum',
    }

    formaters = {
        'Дата': datetime.now().strftime('%Y-%m-%d'),
    }

    docpack = []
    curdoc = {}

    text = open(file, 'r', encoding='Windows-1251').read()

    for line in text.splitlines()[1:]:
        if line.startswith('КонецДокумента'):
            docpack.append(curdoc)
            curdoc = {}
            continue
        if line.startswith('КонецФайла'):
            break
        key, value = line.split('=', maxsplit=1)
        value = formaters.get(key, value)
        key = translators.get(key, None)
        if key:
            curdoc[key] = value
    return docpack
python 1с
  • 3 个回答
  • 106 Views

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5