LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How to limit Shared Variable Engine SVE to only publish to one network device

I have multiple network cards installed in the PC, and they are configured to be on seperate subnets.

Is it possible to limit the publish scope of the Shared Variable Engine to only publish shared variables to one network card?

0 Kudos
Message 1 of 6
(3,466 Views)

Your network published shared variables will automatically be published to all NICs on your PC. There is no mechanism for limiting the scope to just one of your cards. Is there a specific reason why you want to do this rather than just ignoring the shared variables published on the other subnets?

0 Kudos
Message 2 of 6
(3,414 Views)

Thanks for the reply. 

The setup that we have has a machine with all ethernet components; air valves, motors, etc..  The variables are all read/write so we can control the machine via ethernet on the local PC.  We put 2 Network cards in the PC inthe hopes that one card would control the machine and the other would be able to connect to our network to retrieve data and such. 

With the shared variables being available on the network, anyone can control the machine - which is not a good thing.

 

Is there some other way I might be able to restrict access to only the local PC?

0 Kudos
Message 3 of 6
(3,368 Views)

I'm unsure of the configuration of your network, but one option may be to block the associated ports at certain gateways. This white paper provides a list of all the default ports for network published shared variables.

 

https://www.ni.com/en/support/security/configuring-software-and-hardware-firewalls-to-support-nation...

 

 

0 Kudos
Message 4 of 6
(3,339 Views)

Thanks for the info.  

I read through the white paper and referenced links, doesn't look to be a good option.   We still want to use shared variables on the network to transmit status info, so I can't just disable the ports; and even then - like you indicated, it would have to be a gateways and not at the local PC otherwise the local PC would not be able to control the machine.. I think anyhow..

 

What I need is to limit the scope, or access, to a range of shared variables to only use 1 specific network card - looks like it is not possible right now.

Especially since I am creating them all programmatically and not through any UI; it looks like there might be more config options in the UI (shared variable editor) versus whats available through property nodes and such.

 

The LogosXT file may be able to change the config somehow - but I can not seem to locate any help file or info on what can be contained in it.

 

Does anyone have any info on the usage of LogosXT ?

 

0 Kudos
Message 5 of 6
(3,316 Views)

Have you considered building a web service rather than using network published shared variables? The shared variable engine intentionally publishes to all NICs in order to eliminate problems with not being able to see your variables on the network. Limiting the scope of those variables is not a typical thing to do. However, if you created a web service you could enable security on it so only you or the expected users would have access.

 

If you want to know more about this option take a look at this tutorial and this knowledgebase article about security.

 

0 Kudos
Message 6 of 6
(3,275 Views)