I'm looking to establish a connection between my laptop and a remote PC in such a way that I can ping other devices connected to one of its network cards from my laptop.
That might be a little unclear- let me be more specific:
I am a PLC programmer, and my company just migrated to a brand of PLC that requires individual software licenses for each "station." So we're not going to be spending the money for the programming software at each location- instead, each technician will have a laptop, and he can physically visit whichever location needs troubleshooting.
However, that gets to be a lot of travel (international, in some cases), and I'm looking to come up with a way (using a VPN or something) so that I can connect to a PLC remotely.
Our setup is a Windows 7 Industrial PC at the customer's location with two network cards- one is hooked up to the customer's network (and the internet), and the other is hooked into the various PLCs, all with static IPs in the same range. I'm trying to minimize the amount of software I'll have to install/purchase for this project- we already use Teamviewer, but its VPN connection doesn't seem capable of accomplishing what I want (at least, I've never been able to manage a successful ping to one of the PLCs, no matter how much I mess with settings, and their support consists mainly of "buy our newest version").
I've seen lots of posts about this kind of stuff on the internet, but a lot of it seems directed to people who either already know how to set this stuff up and just want to know which software is cheapest, or it is specific to the brand of PLC (I'm using Lenze, which is not very common in english-speaking countries, or at least in america).
Anybody who has managed something like this- I'd really appreciate some sort of walkthrough, or at the very least some pointers in the right direction.
VPN is for TPC/IP communication. Whenever you need layer 2 from ethernet, you're stuck. I know that Step 7 TIA from Siemens can not find for PLCs via VPN. Explaination from support is that searching goes via layer 2. And this list can be made longer.
Most brands can now handle programming via memory cards. Just program local, write it to a memory card and plug it into your PLC.
Just contact the companies and see what they have to offer. The times are still here that PLC brands are fighting for customers. Let them do the work for you and enjoy. It works for our company. :)
Related
Here's the issue...
I work in a remote area of Alaska where cell service can be... questionable. We do have decent WiFi, however, is not openly available to staff because it has a low enough data limit that we don't want to deal with people streaming Netflix and running out the company data.
The big issue is that we want to use an app like Slack or Discord to communicate more effectively across the business. Because the cell service is spotty and the WiFi is currently off-limits, I was wondering if there was a way for me to create a WiFi network that was whitelisted to only allow Slack, for example. Then we get the benefits of using the WiFi without risking running out of data.
Thoughts? I was thinking about setting up a network proxy, but I wanted to get the internet's take on it before I dive down the rabbit hole.
The best way I can think of to handle something like this is to use a router that you can configure the dns server settings and block all dns entries that aren’t on your allowlist. This doesn’t strictly block traffic to everywhere but it will do a pretty good job.
You could also block all dns traffic that’s not going to the local dns server which would help not allow people around it. To have a hard block on things you would need to block specific options addresses which with services such as slack or discord could change randomly which would be hard to keep up on.
Another option that would work well is use your own self hosted version of mattermost, rocket.chat, or riot/matrix that you would have control over and knowledge of the IP address so that you can allowlist only those up addresses. The other advantage with this is if the business is just localized communication and you don’t need to chat across long distances then you could set this to work completely on a network with no internet access so you wouldn’t have to do any blocking because the wifi is completely separated from the internet.
Things are heavily based on your situation but I hope this gives you a good place to start
I'm currently looking at options to allow me to build a remote COM-port solution.
The idea is to be able to access from my remote PC, another PC that's directly connected to a device locally via its serial COM-port.
I know that the obivous answer is to use a VPN between the 2 Internet connected PCs.
However, I need this solution to be as seamless to the end-user as possible.
i.e. no installing and configuring VPN software, etc.
So I was thinking that WebRTC would be great because the end-user can simply use their web-browser and not have to install any additional software.
My question is, is it possible to stream the COM port data between the 2 PCs via WebRTC?
If so, can you please point me in the right direction as to how I can go about achieving this?
Sorry if this is a ridiculous question, I'm very new to WebRTC, just exploring my options.
Thanks.
That should work great!
Networking wise you get NAT Traversal. That means the two computers can be in completely different networks, and still communicate. You may have to run a TURN server if P2P isn't possible.
Data wise you can exchange anything you want via data channels. It is datagram based and you can send/receive binary data. You get a callback telling you how much has been delivered, that way you can detect backpressure.
Are you ok with installing software on the remote host? You can do something like Pion WebRTC's data-channels. This shows you can have a browser connect to a Go process via WebRTC. Then use tarm/serial on the remote host to interact with the device.
If you want a browser on both ends there is the Web Serial API I haven't used it myself though. That locks you into only doing Chromium which might be an issue.
I have been playing with Contiki for some time now and have tried out various examples and wrote my own for both the simulation environment and the real hardware. I have only been experimenting with self contained networks that, for example, measure the temperature difference between two nodes and then communicate that data with other devices (PCs) over plain text RS232 link, blink LEDs, and such simple stuff.
Now I want to make a more complicated system where instead of just forwarding the data in plain text to be read on a console I would forward it to an application that would in turn post it to some sort of web service and, vice versa, receive data from web service to be delivered to nodes on the network. There is quite a lot of examples and tutorials describing this kind of setup but all of them (as far as I am aware) are focusing on the IP(v6) stack and SLIP to achieve this. The problem with this is that I have a really lousy programmer and uploading of a 50 kB image takes about 1.5 mins so the development cycle is pure hell. I am also out of luck with simulation since my platform is not really supported at the moment.
That's why I decided to try out the Rime stack, image size is 1/3 of the IPv6 and the development cycle is somewhat acceptable now (I really should get a decent JTAG programmer...) Meanwhile, I am having a bit of trouble wrapping my head around this new setup with a different network stack on which there is very little information around. Although it is pretty easy to understand by itself, I am not sure how I would go about connecting a Rime network to an IP network and if it was even possible or advised/intended by it's designers.
I have some ideas in my head, ranging from ad hoc communication over a serial link between a server application running on the PC and the collector node, to a real Rime border router that is certainly outside of my league, for now.
How would you go about it? It would certainly work for my simple experimental case to just have a collector node that gathers the data from the Rime network and sends the aggregated data over a serial connection to the custom application that does the rest of the magic, but, I wouldn't want to be the guy that reinvented the wheel and I am quite sure that Rime wasn't designed to be used in a vacuum so there must be at least an advised way of doing this?
Rime is a really simple stack (By simple I mean few functionnality). But it's quite quicker for simple task.
You need to program the Rime stack on your gateway. Thus, your board and the gateway can communicate with the same stack. So now you have the data send on your gateway. The gateway now can send the data with IP to whoever you want.
If you want more technical detail, then edit your question with more specific technical context.
Btw JTAG is a must have. (for industrial application)
Edit : An other solution is to simply send your data from your board to your gateway in broadcast. Then the gateway take the data and interpret it. The cons of this method is you have to somehow be sure that your gateway interpret only the data of your board (not of others board)
I'm looking for preferably a device, but I'll settle for an application. I'd like to get an idea of what is out there. Something just to get a total count from what computer, And maybe by common ports.
I'm not looking for a detailed reporting like wireshark, unless wireshark can do summaries and be running for a whole month without issues.
Essentially, I just want an idea of where my monthly bandwidth is going and by what computers / devices. I.e. computer A does a lot of website traffic, computer B gets a lot of steam downloads, device C has got some virus setting out on an unknown port. Now to be clear, I would only know that Device C has some virus on it as the logs would show either lots of bandwidth on a unknown port which then gets be to investigate.
Being able to ignore / filter any traffic that stays behind the router would be nice. This computer as of this post has over a gig of traffic, but mostly to the networked drive I have, I'm really only interested in what uses internet bandwidth, and who's using it... and if possible, what it is.
If you ask for some tools,maybe google/superuser is better for you.
If you ask how to program, you can use Raw Socket.
RawSocket is able to work as network sniffer. So you can get your networking bandwidth using.
Im in need of a solution, I basically require a way to print from a web page to a printer. But the printer needs to be standalone, either plugging directly into phone line, using a sim card etc. Does anyone know of a good solution for this?
It needs to be cheap to run, setup costs aren't that much of an issue, but obviously the cheaper the better.
If landline is okay, I believe the device you want is an antiquated piece of hardware called a "fax machine"
If wireless on a mobile network, the service plan is more of a cost concern than the hardware, though the two might be bundled together. For example, a company called bug labs is working on some kind of partnership with verizon for connecting their embedded linux device construction kit.