<p class="wp-block-paragraph">éåéå¸ï¼é 便çåçè¨ï¼è¥æé¯èª¤è«ä¸åææã</p>



<p class="wp-block-paragraph">Junosåºæ¬æä½årootå¯ç¢¼è¨å®å¯åèæä¹åçæç« ï¼<a href="https://kerker.website/juniper-junos%E5%9F%BA%E6%9C%AC%E6%93%8D%E4%BD%9C%E3%80%81root%E5%AF%86%E7%A2%BC%E8%A8%AD%E5%AE%9A/">Juniper Junosåºæ¬æä½ãrootå¯ç¢¼è¨å®</a></p>



<p class="wp-block-paragraph">ææJuniperç¸éæç« å表ï¼<a href="https://kerker.website/juniper-junos-%E7%B3%BB%E5%88%97-%E6%96%87%E7%AB%A0%E5%88%97%E8%A1%A8/">Juniper JunOS ç³»åæç« å表</a></p>



<!--more-->



<p class="wp-block-paragraph">éæ¼OSPFçåºæ¬è¨å®å¯ä»¥åèï¼<a href="https://kerker.website/juniper-junos%e5%8b%95%e6%85%8b%e8%b7%af%e7%94%b1ospf%e5%9f%ba%e6%9c%ac%e8%a8%ad%e5%ae%9a/" class="aioseop-link">Junosåæ è·¯ç±OSPFåºæ¬è¨å®</a></p>



<p class="wp-block-paragraph">OSPFæä¾äºå°å¤é¨è·¯ç±å å ¥OSPF網路ä½è·¯ç±äº¤æçåè½ï¼é裡以å°Direct linkçè·¯ç±è½éå°OSPF網路çºä¾ã</p>



<p class="wp-block-paragraph">æ¶æ§åèåºæ¬è¨å®æä½¿ç¨çæ¶æ§ç¸åï¼ä¸å·²ç¶å å°ææä»é¢(é¤irb.100ãirb.200å¤)å å ¥OSPF area 0.0.0.0 ä¸äºã</p>



<figure class="wp-block-image size-large"><img src="https://lh3.googleusercontent.com/pw/AP1GczPxMkb7af5Y4Afaqmg8E5nvH9KD9ypYsG8nxYNax46IbaWp1jXvsPMHGN2TreOVVPasTnTMElCNLeyePviPkdUYr1f5iB1ccj8dI0fHaeAidIbJQyfjcjtkuMJTzRXHA76qsqKi-BSFnPfXBgWphwb_=w439-h471-s-no-gm?authuser=0" alt=""/></figure>



<p class="wp-block-paragraph">é¦å è¦å»ºç«ä¸åpolicy-statementä½çºè·¯ç±æå¯å ¥çè¦åï¼åªè¦æ¯ä¾èªprotocol directçè·¯ç±å°±é½è½éå°OSPFã</p>



<pre class="wp-block-code"><code> KerKer@sw3#set policy-options policy-statement direct_to_ospf term 1 from protocol direct
 KerKer@sw3#set policy-options policy-statement direct_to_ospf term 1 then accept
 KerKer@sw3#set policy-options policy-statement direct_to_ospf term 2 then reject</code></pre>



<p class="wp-block-paragraph">policy-statementè¨å®æªå®æå¾å¤§æ¦æé·é樣ï¼</p>



<pre class="wp-block-code"><code> KerKer@sw3>; show configuration policy-options policy-statement direct_to_ospf 
 term 1 {
 from protocol direct;
 then accept;
 }
 term 2 {
 then reject;
 }</code></pre>



<p class="wp-block-paragraph">å°ååè¨å®å¥½çpolicy-statementå¥ç¨å°OSPFçexportä¸ï¼</p>



<pre class="wp-block-code"><code> KerKer@sw3#set protocols ospf export direct_to_ospf</code></pre>



<p class="wp-block-paragraph">å¯ä»¥ééå¨å½ä»¤æ¨¡å¼ä¸show ospf databaseä¾ç¢ºèªæ¯å¦ææåå¯å ¥å¤é¨è·¯ç±ï¼</p>



<pre class="wp-block-code"><code> KerKer@sw3>; show ospf database 
 ...
 OSPF AS SCOPE link state database
 Type ID Adv Rtr Seq Age Opt Cksum Len 
 Extern 192.168.100.0 10.0.0.3 0x80000001 474 0x22 0x9245 36
 Extern 192.168.200.0 10.0.0.3 0x80000001 474 0x22 0x4231 36</code></pre>



<p class="wp-block-paragraph">妿䏿³å¯å ¥æäºè·¯ç±ï¼å¯ä»¥å¨policy-statementä½é濾ï¼éè£¡ä»¥éæ¿¾æ192.168.100.0/24çºä¾ï¼å¨åæ¬çpolicy-statementä¸å å ¥ä¸åæ°çtermä½é濾ï¼</p>



<pre class="wp-block-code"><code> KerKer@sw3#set policy-options policy-statement direct_to_ospf term 0 from route-filter 192.168.100.0/24 exact
 KerKer@sw3#set policy-options policy-statement direct_to_ospf term 0 then reject
 KerKer@sw3#insert policy-statement direct_to_ospf term 0 before term 1 </code></pre>



<p class="wp-block-paragraph">policy-statementè¨å®æªå®æå¾å¤§æ¦æé·é樣ï¼</p>



<pre class="wp-block-code"><code> KerKer@sw3>; show configuration policy-options policy-statement direct_to_ospf
 term 0 {
 from {
 route-filter 192.168.100.0/24 exact;
 }
 then reject;
 }
 term 1 {
 from protocol direct;
 then accept;
 }
 term 2 {
 then reject;
 }</code></pre>



<p class="wp-block-paragraph">é裡æä¸ä¸route-filter徿¥çexact代表é®ç½©é·åº¦è¦èè¨å®çprefixç¸åï¼å¨æåçä¾åä¸å°±æ¯24ï¼å ¶ä»éælongerãorlongerãprefix-length-rangeçç¨ä¾å¤æ·prefixé®ç½©é·åº¦ç使³ã</p>



<p class="wp-block-paragraph">æ¥çospf databaseç¢ºèªæ¯å¦æåéæ¿¾ï¼</p>



<pre class="wp-block-code"><code> KerKer@sw3>; show ospf database 
 ...
 OSPF AS SCOPE link state database
 Type ID Adv Rtr Seq Age Opt Cksum Len 
 Extern 192.168.200.0 10.0.0.3 0x80000001 474 0x22 0x4231 36</code></pre>



<p class="wp-block-paragraph">é¤äºä½¿ç¨route-filterä½é濾å¤ï¼ä¹å¯ä»¥å¼å ¥prefix-listä½é濾ï¼é裡å å°ååä½çroute-filteråªé¤ã</p>



<pre class="wp-block-code"><code> KerKer@sw3#delete policy-options policy-statement direct_to_ospf term 0 from route-filter 192.168.100.0/24 exact</code></pre>



<p class="wp-block-paragraph">æ°å¢ä¸åprefix-listå å«ä¸å¯å ¥çè·¯ç±ï¼ä¸¦å¨policy-statementä¸è¨å®prefix-list-filterï¼</p>



<pre class="wp-block-code"><code> KerKer@sw3#set policy-options prefix-list no_redistribute 192.168.100.0/24
 KerKer@sw3#set policy-options policy-statement direct_to_ospf term 0 from prefix-list-filter no_redistribute exact</code></pre>



<p class="wp-block-paragraph">policy-statementè¨å®æªå®æå¾å¤§æ¦æé·é樣ï¼é樣ä½çææèåå使ç¨route-filterçæææ¯ä¸è´çï¼</p>



<pre class="wp-block-code"><code> KerKer@sw3>; show configuration policy-options policy-statement direct_to_ospf
 term 0 {
 from {
 prefix-list-filter no_redistribute exact;
 }
 then reject;
 }
 term 1 {
 from protocol direct;
 then accept;
 }
 term 2 {
 then reject;
 }</code></pre>



<p class="wp-block-paragraph">æå¾å享ä¸ä¸å¯¦åä¸å¸¸ç¨å°çï¼å°Private IPçè·¯ç±é濾æä¸å¯å ¥OSPFçåæ³ã</p>



<p class="wp-block-paragraph">䏿¨£å å°ååä½çè¨å®åªé¤ï¼</p>



<pre class="wp-block-code"><code> KerKer@sw3#delete policy-options prefix-list no_redistribute 192.168.100.0/24
 KerKer@sw3#delete policy-options policy-statement direct_to_ospf term 0 from prefix-list-filter no_redistribute exact</code></pre>



<p class="wp-block-paragraph">建ç«prefix-listå å«ä¸æ®µPrivate IP (æçæ æ³ä¸ä¹æå°0.0.0.0/0æ¡ä¸¦åéæ¿¾)ï¼</p>



<pre class="wp-block-code"><code> KerKer@sw3#set policy-options prefix-list no_redistribute 10.0.0.0/8
 KerKer@sw3#set policy-options prefix-list no_redistribute 172.16.0.0/12
 KerKer@sw3#set policy-options prefix-list no_redistribute 192.168.0.0/16</code></pre>



<p class="wp-block-paragraph">å¥ç¨è³policy-statementçprefix-list-filterï¼ä¸¦æ¨è¨çºorlongerï¼</p>



<pre class="wp-block-code"><code> KerKer@sw3#set policy-options policy-statement direct_to_ospf term 0 from prefix-list-filter no_redistribute orlonger</code></pre>



<p class="wp-block-paragraph">policy-statementè¨å®æªå®æå¾å¤§æ¦æé·é樣ï¼</p>



<pre class="wp-block-code"><code> KerKer@sw3>; show configuration policy-options policy-statement direct_to_ospf
 term 0 {
 from {
 prefix-list-filter no_redistribute orlonger;
 }
 then reject;
 }
 term 1 {
 from protocol direct;
 then accept;
 }
 term 2 {
 then reject;
 }</code></pre>

[Juniper] Junos動態路由OSPF路由重分發(redistribute route)

