An engineer adds a term near the top of an export policy toward an upstream peer with the action reject, intended to withhold one subscriber block from that peer. What is the effect of reject on evaluation of a matching route?
Select an answer to reveal the explanation.
Short Explanation
Reject is accept's mirror image: it's also a terminating action, so the moment a route matches, evaluation stops cold, but this time the route gets withheld instead of sent. There's no second look, no downgrade, no retry later. One match, one final answer.
Full Explanation
Reject is the second terminating action available in Junos routing policy, and it behaves exactly like accept in terms of control flow, immediately ending evaluation of that route against any remaining terms in the policy or any later policies in the chain, with the sole difference being the outcome: the route is withheld from advertisement in an export policy, or excluded from installation in an import policy, rather than permitted. Placing a reject term ahead of a broader accept term is precisely how a cooperative carves out an exception, withholding one subscriber block from a specific upstream while still exporting everything else through a later, more general term. The first distractor is wrong because there is no concept of a route getting a second opinion after a terminating action fires; termination means termination, full stop. The local-preference distractor confuses reject with a non-terminating attribute-modification action; local preference is a BGP path attribute set with a then local-preference statement, and it does not apply when the route is being rejected outright rather than advertised. The re-evaluation distractor again invents a periodic timer that Junos routing policy does not use, since policy runs at the moment a route is imported or exported, not on a recurring schedule. A caveat worth remembering is that term order is everything here: a broad accept placed before this reject term would already have terminated evaluation, so the exception would never be reached. A concrete check is show route advertising-protocol bgp <peer> <prefix>, which should show the excluded block absent from what is sent to that neighbor.