Mailing List Archive

Juniper CLI prompts out of sync causing frequent changes
Hi folks,

Last year I commented on an issue we're seeing across many Juniper devices.
I neglected to follow up on Heasley's response then but are seeing it a lot
more frequently now, perhaps related to some OS upgrades or something else.


Thread was here:

http://www.shrubbery.net/pipermail/rancid-discuss/2017-October/009916.html
http://www.shrubbery.net/pipermail/rancid-discuss/2017-October/009922.html

Looking at the last week or so of these we've had, they're on devices
running 14.1X53-D4*, which is primaraily QFX5100 but also a few EX4200.

Here's output from a single diff, its like this on various commands nearly
every run:



Index: configs/r-kettlemoraine-hub
===================================================================
retrieving revision 1.144
diff -u -4 -r1.144 r-kettlemoraine-hub
@@ -1,7 +1,8 @@
#RANCID-CONTENT-TYPE: juniper
#
# r-kettlemoraine-hub> show chassis clocks
+ # show chassis environment
# r-kettlemoraine-hub> show chassis environment
# Class Item Status
# Power FPC 0 Power Supply 0 OK
# FPC 0 Power Supply 1 OK
Index: configs/r-lacrossecity-hub
===================================================================
retrieving revision 1.108
diff -u -4 -r1.108 r-lacrossecity-hub
@@ -15,9 +15,8 @@
# FPC 0 Fan 2 OK
# FPC 0 Fan 3 OK
#
# r-lacrossecity-hub> show chassis firmware
- # show chassis fpc detail
# Part Type Version
# FPC 0 uboot U-Boot 1.1.6 (Jun 5 2012 -
02:24:53) 1.0.0
# loader FreeBSD/PowerPC U-Boot bootstrap
loader 2.4
#
Index: configs/r-platteville-hub
===================================================================
retrieving revision 1.274
diff -u -4 -r1.274 r-platteville-hub
@@ -1,7 +1,8 @@
#RANCID-CONTENT-TYPE: juniper
#
# r-platteville-hub> show chassis clocks
+ # show chassis environment
# r-platteville-hub> show chassis environment
# Class Item Status
# Power FPC 0 Power Supply 0 OK
# FPC 0 Power Supply 1 OK

Heasley, you chimed in saying the prompt may be out of sync. While I don't
quite know what that means, you suggested sending output of:

eval `rancid -Ct juniper device`

Here that is, finally:

jlogin -t 120 -c 'show chassis clocks;show chassis environment;show chassis
firmware;show chassis fpc detail;show chassis hardware detail;show chassis
hardware models;show chassis routing-engine;show chassis scb;show chassis
sfm detail;show chassis ssb;show chassis feb detail;show chassis feb;show
chassis cfeb;show chassis alarms;show system license;show system
boot-messages;show system core-dumps;show version detail;show version
invoke-on other-routing-engine;show configuration;file checksum md5
/var/db/scripts/*/*;file list recursive /var/db/scripts/' r-platteville-hub

You may notice some additions at the end which help us track some slax
scripts:

file checksum md5 /var/db/scripts/*/*;file list recursive /var/db/scripts/'

we've had those in place for quite some time (before this) so I'm unsure if
those are related.

Cheers,
Chris
Re: Juniper CLI prompts out of sync causing frequent changes [ In reply to ]
Fri, Jul 27, 2018 at 08:18:08AM -0500, Chris Wopat:
> Hi folks,
>
> Last year I commented on an issue we're seeing across many Juniper devices.
> I neglected to follow up on Heasley's response then but are seeing it a lot
> more frequently now, perhaps related to some OS upgrades or something else.
>
>
> Thread was here:
>
> http://www.shrubbery.net/pipermail/rancid-discuss/2017-October/009916.html
> http://www.shrubbery.net/pipermail/rancid-discuss/2017-October/009922.html
>
> Looking at the last week or so of these we've had, they're on devices
> running 14.1X53-D4*, which is primaraily QFX5100 but also a few EX4200.
>
> Here's output from a single diff, its like this on various commands nearly
> every run:
>
>
>
> Index: configs/r-kettlemoraine-hub
> ===================================================================
> retrieving revision 1.144
> diff -u -4 -r1.144 r-kettlemoraine-hub
> @@ -1,7 +1,8 @@
> #RANCID-CONTENT-TYPE: juniper
> #
> # r-kettlemoraine-hub> show chassis clocks
> + # show chassis environment
> # r-kettlemoraine-hub> show chassis environment
> # Class Item Status
> # Power FPC 0 Power Supply 0 OK
> # FPC 0 Power Supply 1 OK
> Index: configs/r-lacrossecity-hub
> ===================================================================
> retrieving revision 1.108
> diff -u -4 -r1.108 r-lacrossecity-hub
> @@ -15,9 +15,8 @@
> # FPC 0 Fan 2 OK
> # FPC 0 Fan 3 OK
> #
> # r-lacrossecity-hub> show chassis firmware
> - # show chassis fpc detail
> # Part Type Version
> # FPC 0 uboot U-Boot 1.1.6 (Jun 5 2012 -
> 02:24:53) 1.0.0
> # loader FreeBSD/PowerPC U-Boot bootstrap
> loader 2.4
> #
> Index: configs/r-platteville-hub
> ===================================================================
> retrieving revision 1.274
> diff -u -4 -r1.274 r-platteville-hub
> @@ -1,7 +1,8 @@
> #RANCID-CONTENT-TYPE: juniper
> #
> # r-platteville-hub> show chassis clocks
> + # show chassis environment
> # r-platteville-hub> show chassis environment
> # Class Item Status
> # Power FPC 0 Power Supply 0 OK
> # FPC 0 Power Supply 1 OK
>
> Heasley, you chimed in saying the prompt may be out of sync. While I don't
> quite know what that means, you suggested sending output of:
>
> eval `rancid -Ct juniper device`
>
> Here that is, finally:
>
> jlogin -t 120 -c 'show chassis clocks;show chassis environment;show chassis
> firmware;show chassis fpc detail;show chassis hardware detail;show chassis
> hardware models;show chassis routing-engine;show chassis scb;show chassis
> sfm detail;show chassis ssb;show chassis feb detail;show chassis feb;show
> chassis cfeb;show chassis alarms;show system license;show system
> boot-messages;show system core-dumps;show version detail;show version
> invoke-on other-routing-engine;show configuration;file checksum md5
> /var/db/scripts/*/*;file list recursive /var/db/scripts/' r-platteville-hub
>
> You may notice some additions at the end which help us track some slax
> scripts:
>
> file checksum md5 /var/db/scripts/*/*;file list recursive /var/db/scripts/'
>
> we've had those in place for quite some time (before this) so I'm unsure if
> those are related.

not likely. I presume you have a banner with something that looks like a
prompt; like https://www.juniper.net/documentation/software/junos/junos93/swconfig-system-basics/configuring-a-system-login-message.html.
if not, you'll have to share output with me.

eval `rancid -t juniper -C hostname` &> output

_______________________________________________
Rancid-discuss mailing list
Rancid-discuss@shrubbery.net
http://www.shrubbery.net/mailman/listinfo/rancid-discuss
Re: Juniper CLI prompts out of sync causing frequent changes [ In reply to ]
We actually do not have a banner, but your mention of that reminds me that
indeed, when doing some updates recently we enabled login-tip (
https://www.juniper.net/documentation/en_US/junos/topics/reference/configuration-statement/login-tip-edit-system.html/)
which is almost certainly putting something random in a banner-ish area
upon each login.

Here are 3 random examples from the same device:

========================================================
Password:
--- JUNOS 14.1X53-D47.3 built 2018-05-10 21:38:01 UTC
JUNOS tip:
Use the 'no-more' CLI pipe to disable the CLI's more capability and
let the multiple pages of output scroll without stopping.


--- JUNOS 14.1X53-D47.3 built 2018-05-10 21:38:01 UTC
JUNOS tip:
Use ESC-/ in the CLI to expand strings into matching words from the
command line history.

Password:
--- JUNOS 14.1X53-D47.3 built 2018-05-10 21:38:01 UTC
JUNOS tip:
Use the TAB key to autocomplete interface names in operational mode.
========================================================

Since they liberally use dashes, single quotes, forward slashes and so on-
this seems to be the likely culprit?

Would it be possible to filter out anything between "JUNOS tip" and the
first valid prompt so we have a chance of leaving them enabled?


--Chris



On Fri, Jul 27, 2018 at 12:00 PM, heasley <heas@shrubbery.net> wrote:

> Fri, Jul 27, 2018 at 08:18:08AM -0500, Chris Wopat:
> > Hi folks,
> >
> > Last year I commented on an issue we're seeing across many Juniper
> devices.
> > I neglected to follow up on Heasley's response then but are seeing it a
> lot
> > more frequently now, perhaps related to some OS upgrades or something
> else.
> >
> >
> > Thread was here:
> >
> > http://www.shrubbery.net/pipermail/rancid-discuss/2017-
> October/009916.html
> > http://www.shrubbery.net/pipermail/rancid-discuss/2017-
> October/009922.html
> >
> > Looking at the last week or so of these we've had, they're on devices
> > running 14.1X53-D4*, which is primaraily QFX5100 but also a few EX4200.
> >
> > Here's output from a single diff, its like this on various commands
> nearly
> > every run:
> >
> >
> >
> > Index: configs/r-kettlemoraine-hub
> > ===================================================================
> > retrieving revision 1.144
> > diff -u -4 -r1.144 r-kettlemoraine-hub
> > @@ -1,7 +1,8 @@
> > #RANCID-CONTENT-TYPE: juniper
> > #
> > # r-kettlemoraine-hub> show chassis clocks
> > + # show chassis environment
> > # r-kettlemoraine-hub> show chassis environment
> > # Class Item Status
> > # Power FPC 0 Power Supply 0 OK
> > # FPC 0 Power Supply 1 OK
> > Index: configs/r-lacrossecity-hub
> > ===================================================================
> > retrieving revision 1.108
> > diff -u -4 -r1.108 r-lacrossecity-hub
> > @@ -15,9 +15,8 @@
> > # FPC 0 Fan 2 OK
> > # FPC 0 Fan 3 OK
> > #
> > # r-lacrossecity-hub> show chassis firmware
> > - # show chassis fpc detail
> > # Part Type Version
> > # FPC 0 uboot U-Boot 1.1.6 (Jun 5 2012 -
> > 02:24:53) 1.0.0
> > # loader FreeBSD/PowerPC U-Boot bootstrap
> > loader 2.4
> > #
> > Index: configs/r-platteville-hub
> > ===================================================================
> > retrieving revision 1.274
> > diff -u -4 -r1.274 r-platteville-hub
> > @@ -1,7 +1,8 @@
> > #RANCID-CONTENT-TYPE: juniper
> > #
> > # r-platteville-hub> show chassis clocks
> > + # show chassis environment
> > # r-platteville-hub> show chassis environment
> > # Class Item Status
> > # Power FPC 0 Power Supply 0 OK
> > # FPC 0 Power Supply 1 OK
> >
> > Heasley, you chimed in saying the prompt may be out of sync. While I
> don't
> > quite know what that means, you suggested sending output of:
> >
> > eval `rancid -Ct juniper device`
> >
> > Here that is, finally:
> >
> > jlogin -t 120 -c 'show chassis clocks;show chassis environment;show
> chassis
> > firmware;show chassis fpc detail;show chassis hardware detail;show
> chassis
> > hardware models;show chassis routing-engine;show chassis scb;show chassis
> > sfm detail;show chassis ssb;show chassis feb detail;show chassis feb;show
> > chassis cfeb;show chassis alarms;show system license;show system
> > boot-messages;show system core-dumps;show version detail;show version
> > invoke-on other-routing-engine;show configuration;file checksum md5
> > /var/db/scripts/*/*;file list recursive /var/db/scripts/'
> r-platteville-hub
> >
> > You may notice some additions at the end which help us track some slax
> > scripts:
> >
> > file checksum md5 /var/db/scripts/*/*;file list recursive
> /var/db/scripts/'
> >
> > we've had those in place for quite some time (before this) so I'm unsure
> if
> > those are related.
>
> not likely. I presume you have a banner with something that looks like a
> prompt; like https://www.juniper.net/documentation/software/junos/
> junos93/swconfig-system-basics/configuring-a-system-login-message.html.
> if not, you'll have to share output with me.
>
> eval `rancid -t juniper -C hostname` &> output
>
Re: Juniper CLI prompts out of sync causing frequent changes [ In reply to ]
Fri, Jul 27, 2018 at 12:58:14PM -0500, Chris Wopat:
> We actually do not have a banner, but your mention of that reminds me that
> indeed, when doing some updates recently we enabled login-tip (
> https://www.juniper.net/documentation/en_US/junos/topics/reference/configuration-statement/login-tip-edit-system.html/)
> which is almost certainly putting something random in a banner-ish area
> upon each login.
>
> Here are 3 random examples from the same device:
>
> ========================================================
> Password:
> --- JUNOS 14.1X53-D47.3 built 2018-05-10 21:38:01 UTC
> JUNOS tip:
> Use the 'no-more' CLI pipe to disable the CLI's more capability and
> let the multiple pages of output scroll without stopping.
>
>
> --- JUNOS 14.1X53-D47.3 built 2018-05-10 21:38:01 UTC
> JUNOS tip:
> Use ESC-/ in the CLI to expand strings into matching words from the
> command line history.
>
> Password:
> --- JUNOS 14.1X53-D47.3 built 2018-05-10 21:38:01 UTC
> JUNOS tip:
> Use the TAB key to autocomplete interface names in operational mode.
> ========================================================
>
> Since they liberally use dashes, single quotes, forward slashes and so on-
> this seems to be the likely culprit?

maybe; those do not look like prompts.

> Would it be possible to filter out anything between "JUNOS tip" and the
> first valid prompt so we have a chance of leaving them enabled?

it is all about reliably identifying the valid prompt. if i could tell
users and vendors not to use [\][[:space:])(_*\\<>] in their prompts, life
would be easier - the regex would simply be
^[^PROMPTTERMINALCHAR\r\n ]+PROMPTTERMINALCHAR

jlogin is looking for '>'. can you reproduce it reliably with a particular
device? if you can share (with me only) the output of
jlogin -d -c 'show version' hostname 2> output
i expect that i can fix it, but i may need more output, like:
jlogin -d -c 'show chassis clocks;show chassis environment;show chassis firmware;show chassis fpc detail' hostname 2> output

> --Chris
>
>
>
> On Fri, Jul 27, 2018 at 12:00 PM, heasley <heas@shrubbery.net> wrote:
>
> > Fri, Jul 27, 2018 at 08:18:08AM -0500, Chris Wopat:
> > > Hi folks,
> > >
> > > Last year I commented on an issue we're seeing across many Juniper
> > devices.
> > > I neglected to follow up on Heasley's response then but are seeing it a
> > lot
> > > more frequently now, perhaps related to some OS upgrades or something
> > else.
> > >
> > >
> > > Thread was here:
> > >
> > > http://www.shrubbery.net/pipermail/rancid-discuss/2017-
> > October/009916.html
> > > http://www.shrubbery.net/pipermail/rancid-discuss/2017-
> > October/009922.html
> > >
> > > Looking at the last week or so of these we've had, they're on devices
> > > running 14.1X53-D4*, which is primaraily QFX5100 but also a few EX4200.
> > >
> > > Here's output from a single diff, its like this on various commands
> > nearly
> > > every run:
> > >
> > >
> > >
> > > Index: configs/r-kettlemoraine-hub
> > > ===================================================================
> > > retrieving revision 1.144
> > > diff -u -4 -r1.144 r-kettlemoraine-hub
> > > @@ -1,7 +1,8 @@
> > > #RANCID-CONTENT-TYPE: juniper
> > > #
> > > # r-kettlemoraine-hub> show chassis clocks
> > > + # show chassis environment
> > > # r-kettlemoraine-hub> show chassis environment
> > > # Class Item Status
> > > # Power FPC 0 Power Supply 0 OK
> > > # FPC 0 Power Supply 1 OK
> > > Index: configs/r-lacrossecity-hub
> > > ===================================================================
> > > retrieving revision 1.108
> > > diff -u -4 -r1.108 r-lacrossecity-hub
> > > @@ -15,9 +15,8 @@
> > > # FPC 0 Fan 2 OK
> > > # FPC 0 Fan 3 OK
> > > #
> > > # r-lacrossecity-hub> show chassis firmware
> > > - # show chassis fpc detail
> > > # Part Type Version
> > > # FPC 0 uboot U-Boot 1.1.6 (Jun 5 2012 -
> > > 02:24:53) 1.0.0
> > > # loader FreeBSD/PowerPC U-Boot bootstrap
> > > loader 2.4
> > > #
> > > Index: configs/r-platteville-hub
> > > ===================================================================
> > > retrieving revision 1.274
> > > diff -u -4 -r1.274 r-platteville-hub
> > > @@ -1,7 +1,8 @@
> > > #RANCID-CONTENT-TYPE: juniper
> > > #
> > > # r-platteville-hub> show chassis clocks
> > > + # show chassis environment
> > > # r-platteville-hub> show chassis environment
> > > # Class Item Status
> > > # Power FPC 0 Power Supply 0 OK
> > > # FPC 0 Power Supply 1 OK
> > >
> > > Heasley, you chimed in saying the prompt may be out of sync. While I
> > don't
> > > quite know what that means, you suggested sending output of:
> > >
> > > eval `rancid -Ct juniper device`
> > >
> > > Here that is, finally:
> > >
> > > jlogin -t 120 -c 'show chassis clocks;show chassis environment;show
> > chassis
> > > firmware;show chassis fpc detail;show chassis hardware detail;show
> > chassis
> > > hardware models;show chassis routing-engine;show chassis scb;show chassis
> > > sfm detail;show chassis ssb;show chassis feb detail;show chassis feb;show
> > > chassis cfeb;show chassis alarms;show system license;show system
> > > boot-messages;show system core-dumps;show version detail;show version
> > > invoke-on other-routing-engine;show configuration;file checksum md5
> > > /var/db/scripts/*/*;file list recursive /var/db/scripts/'
> > r-platteville-hub
> > >
> > > You may notice some additions at the end which help us track some slax
> > > scripts:
> > >
> > > file checksum md5 /var/db/scripts/*/*;file list recursive
> > /var/db/scripts/'
> > >
> > > we've had those in place for quite some time (before this) so I'm unsure
> > if
> > > those are related.
> >
> > not likely. I presume you have a banner with something that looks like a
> > prompt; like https://www.juniper.net/documentation/software/junos/
> > junos93/swconfig-system-basics/configuring-a-system-login-message.html.
> > if not, you'll have to share output with me.
> >
> > eval `rancid -t juniper -C hostname` &> output
> >

_______________________________________________
Rancid-discuss mailing list
Rancid-discuss@shrubbery.net
http://www.shrubbery.net/mailman/listinfo/rancid-discuss